23 |
23 |
24 from cubicweb.devtools import TestServerConfiguration |
24 from cubicweb.devtools import TestServerConfiguration |
25 from cubicweb.devtools.testlib import CubicWebTC |
25 from cubicweb.devtools.testlib import CubicWebTC |
26 from cubicweb.web.formwidgets import PasswordInput, TextArea, Select, Radio |
26 from cubicweb.web.formwidgets import PasswordInput, TextArea, Select, Radio |
27 from cubicweb.web.formfields import * |
27 from cubicweb.web.formfields import * |
28 from cubicweb.web.views.forms import EntityFieldsForm |
28 from cubicweb.web.views.forms import EntityFieldsForm, FieldsForm |
29 |
29 |
30 from cubes.file.entities import File |
30 from cubes.file.entities import File |
31 |
31 |
32 def setUpModule(*args): |
32 def setUpModule(*args): |
33 global schema |
33 global schema |
158 form = EntityFieldsForm(req, entity=e) |
158 form = EntityFieldsForm(req, entity=e) |
159 form.formvalues = {} |
159 form.formvalues = {} |
160 field.render(form, renderer) |
160 field.render(form, renderer) |
161 |
161 |
162 |
162 |
|
163 class CompoundFieldTC(CubicWebTC): |
|
164 |
|
165 def test_multipart(self): |
|
166 """Ensures that compound forms have needs_multipart set if their |
|
167 children require it""" |
|
168 class AForm(FieldsForm): |
|
169 comp = CompoundField([IntField(), StringField()]) |
|
170 aform = AForm(self.request(), None) |
|
171 self.assertFalse(aform.needs_multipart) |
|
172 class MForm(FieldsForm): |
|
173 comp = CompoundField([IntField(), FileField()]) |
|
174 mform = MForm(self.request(), None) |
|
175 self.assertTrue(mform.needs_multipart) |
|
176 |
|
177 |
163 class UtilsTC(TestCase): |
178 class UtilsTC(TestCase): |
164 def test_vocab_sort(self): |
179 def test_vocab_sort(self): |
165 self.assertEqual(vocab_sort([('Z', 1), ('A', 2), |
180 self.assertEqual(vocab_sort([('Z', 1), ('A', 2), |
166 ('Group 1', None), ('Y', 3), ('B', 4), |
181 ('Group 1', None), ('Y', 3), ('B', 4), |
167 ('Group 2', None), ('X', 5), ('C', 6)]), |
182 ('Group 2', None), ('X', 5), ('C', 6)]), |