web/test/unittest_formfields.py
changeset 10772 2ff5afce3216
parent 10273 ef74abcf369d
equal deleted inserted replaced
10771:a688ef1a12eb 10772:2ff5afce3216
    19 
    19 
    20 from logilab.common.testlib import TestCase, unittest_main, mock_object as mock
    20 from logilab.common.testlib import TestCase, unittest_main, mock_object as mock
    21 
    21 
    22 from yams.constraints import StaticVocabularyConstraint, SizeConstraint
    22 from yams.constraints import StaticVocabularyConstraint, SizeConstraint
    23 
    23 
       
    24 import cubicweb
    24 from cubicweb.devtools import TestServerConfiguration
    25 from cubicweb.devtools import TestServerConfiguration
    25 from cubicweb.devtools.testlib import CubicWebTC
    26 from cubicweb.devtools.testlib import CubicWebTC
    26 from cubicweb.web.formwidgets import PasswordInput, TextArea, Select, Radio
    27 from cubicweb.web.formwidgets import PasswordInput, TextArea, Select, Radio
    27 from cubicweb.web.formfields import *
    28 from cubicweb.web.formfields import *
    28 from cubicweb.web.views.forms import EntityFieldsForm, FieldsForm
    29 from cubicweb.web.views.forms import EntityFieldsForm, FieldsForm
   125         with self.admin_access.web_request() as req:
   126         with self.admin_access.web_request() as req:
   126             field = guess_field(schema['CWAttribute'], schema['indexed'], req=req)
   127             field = guess_field(schema['CWAttribute'], schema['indexed'], req=req)
   127             self.assertIsInstance(field, BooleanField)
   128             self.assertIsInstance(field, BooleanField)
   128             self.assertEqual(field.required, False)
   129             self.assertEqual(field.required, False)
   129             self.assertIsInstance(field.widget, Radio)
   130             self.assertIsInstance(field.widget, Radio)
   130             self.assertEqual(field.vocabulary(mock(_cw=mock(_=unicode))),
   131             self.assertEqual(field.vocabulary(mock(_cw=mock(_=cubicweb._))),
   131                               [(u'yes', '1'), (u'no', '')])
   132                               [(u'yes', '1'), (u'no', '')])
   132 
   133 
   133     def test_bool_field_explicit_choices(self):
   134     def test_bool_field_explicit_choices(self):
   134         with self.admin_access.web_request() as req:
   135         with self.admin_access.web_request() as req:
   135             field = guess_field(schema['CWAttribute'], schema['indexed'],
   136             field = guess_field(schema['CWAttribute'], schema['indexed'],
   136                                 choices=[(u'maybe', '1'), (u'no', '')], req=req)
   137                                 choices=[(u'maybe', '1'), (u'no', '')], req=req)
   137             self.assertIsInstance(field.widget, Radio)
   138             self.assertIsInstance(field.widget, Radio)
   138             self.assertEqual(field.vocabulary(mock(req=mock(_=unicode))),
   139             self.assertEqual(field.vocabulary(mock(req=mock(_=cubicweb._))),
   139                               [(u'maybe', '1'), (u'no', '')])
   140                               [(u'maybe', '1'), (u'no', '')])
   140 
   141 
   141 
   142 
   142 class MoreFieldsTC(CubicWebTC):
   143 class MoreFieldsTC(CubicWebTC):
   143     def test_rtf_format_field(self):
   144     def test_rtf_format_field(self):