web/test/unittest_formfields.py
changeset 4172 4d4cef034eec
parent 4084 69739e6ebd2a
child 4252 6c4f109c2b03
equal deleted inserted replaced
4171:f1b9f0ed1253 4172:4d4cef034eec
    44         self.assertEquals(description_format_field, None)
    44         self.assertEquals(description_format_field, None)
    45 
    45 
    46         description_format_field = guess_field(schema['State'], schema['description_format'], skip_meta_attr=False)
    46         description_format_field = guess_field(schema['State'], schema['description_format'], skip_meta_attr=False)
    47         self.assertEquals(description_format_field.internationalizable, True)
    47         self.assertEquals(description_format_field.internationalizable, True)
    48         self.assertEquals(description_format_field.sort, True)
    48         self.assertEquals(description_format_field.sort, True)
    49         self.assertEquals(description_format_field.initial(None), 'text/rest')
       
    50 
    49 
    51 #         wikiid_field = guess_field(schema['State'], schema['wikiid'])
    50 #         wikiid_field = guess_field(schema['State'], schema['wikiid'])
    52 #         self.assertIsInstance(wikiid_field, StringField)
    51 #         self.assertIsInstance(wikiid_field, StringField)
    53 #         self.assertEquals(wikiid_field.required, False)
    52 #         self.assertEquals(wikiid_field.required, False)
    54 
    53 
    90         self.assertIsInstance(data_field.encoding_field, StringField)
    89         self.assertIsInstance(data_field.encoding_field, StringField)
    91         self.assertIsInstance(data_field.name_field, StringField)
    90         self.assertIsInstance(data_field.name_field, StringField)
    92 
    91 
    93     def test_constraints_priority(self):
    92     def test_constraints_priority(self):
    94         salesterm_field = guess_field(schema['Salesterm'], schema['reason'])
    93         salesterm_field = guess_field(schema['Salesterm'], schema['reason'])
    95         constraints = schema['reason'].rproperty('Salesterm', 'String', 'constraints')
    94         constraints = schema['reason'].rdef('Salesterm', 'String').constraints
    96         self.assertEquals([c.__class__ for c in constraints],
    95         self.assertEquals([c.__class__ for c in constraints],
    97                           [SizeConstraint, StaticVocabularyConstraint])
    96                           [SizeConstraint, StaticVocabularyConstraint])
       
    97         self.assertIsInstance(salesterm_field, StringField)
    98         self.assertIsInstance(salesterm_field.widget, Select)
    98         self.assertIsInstance(salesterm_field.widget, Select)
    99 
    99 
   100 
   100 
   101     def test_bool_field_base(self):
   101     def test_bool_field_base(self):
   102         field = guess_field(schema['CWAttribute'], schema['indexed'])
   102         field = guess_field(schema['CWAttribute'], schema['indexed'])
   103         self.assertIsInstance(field, BooleanField)
   103         self.assertIsInstance(field, BooleanField)
   104         self.assertEquals(field.required, False)
   104         self.assertEquals(field.required, False)
   105         self.assertEquals(field.initial(None), None)
       
   106         self.assertIsInstance(field.widget, Radio)
   105         self.assertIsInstance(field.widget, Radio)
   107         self.assertEquals(field.vocabulary(mock(_cw=mock(_=unicode))),
   106         self.assertEquals(field.vocabulary(mock(_cw=mock(_=unicode))),
   108                           [(u'yes', '1'), (u'no', '')])
   107                           [(u'yes', '1'), (u'no', '')])
   109 
   108 
   110     def test_bool_field_explicit_choices(self):
   109     def test_bool_field_explicit_choices(self):
   124         description_field = guess_field(schema['State'], schema['description'])
   123         description_field = guess_field(schema['State'], schema['description'])
   125         description_format_field = description_field.get_format_field(form)
   124         description_format_field = description_field.get_format_field(form)
   126         self.assertEquals(description_format_field.internationalizable, True)
   125         self.assertEquals(description_format_field.internationalizable, True)
   127         self.assertEquals(description_format_field.sort, True)
   126         self.assertEquals(description_format_field.sort, True)
   128         # unlike below, initial is bound to form.form_field_format
   127         # unlike below, initial is bound to form.form_field_format
   129         self.assertEquals(description_format_field.initial(form), 'text/html')
   128         self.assertEquals(description_format_field.value(form), 'text/html')
   130         self.execute('INSERT CWProperty X: X pkey "ui.default-text-format", X value "text/rest", X for_user U WHERE U login "admin"')
   129         self.execute('INSERT CWProperty X: X pkey "ui.default-text-format", X value "text/rest", X for_user U WHERE U login "admin"')
   131         self.commit()
   130         self.commit()
   132         self.assertEquals(description_format_field.initial(form), 'text/rest')
   131         self.assertEquals(description_format_field.value(form), 'text/rest')
   133 
   132 
   134 
   133 
   135 class UtilsTC(TestCase):
   134 class UtilsTC(TestCase):
   136     def test_vocab_sort(self):
   135     def test_vocab_sort(self):
   137         self.assertEquals(vocab_sort([('Z', 1), ('A', 2),
   136         self.assertEquals(vocab_sort([('Z', 1), ('A', 2),