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), |