web/test/unittest_form.py
branchstable
changeset 5994 97c55baefa0c
parent 5914 dc5a77a2e485
child 6340 470d8e828fda
equal deleted inserted replaced
5976:00b1b6b906cf 5994:97c55baefa0c
    13 # FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    13 # FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    14 # details.
    14 # details.
    15 #
    15 #
    16 # You should have received a copy of the GNU Lesser General Public License along
    16 # You should have received a copy of the GNU Lesser General Public License along
    17 # with CubicWeb.  If not, see <http://www.gnu.org/licenses/>.
    17 # with CubicWeb.  If not, see <http://www.gnu.org/licenses/>.
    18 """
       
    19 
       
    20 """
       
    21 
    18 
    22 from xml.etree.ElementTree import fromstring
    19 from xml.etree.ElementTree import fromstring
    23 
    20 
    24 from logilab.common.testlib import unittest_main, mock_object
    21 from logilab.common.testlib import unittest_main, mock_object
    25 from logilab.common.compat import any
    22 from logilab.common.compat import any
    55     def test_form_field_vocabulary_unrelated(self):
    52     def test_form_field_vocabulary_unrelated(self):
    56         b = self.req.create_entity('BlogEntry', title=u'di mascii code', content=u'a best-seller')
    53         b = self.req.create_entity('BlogEntry', title=u'di mascii code', content=u'a best-seller')
    57         t = self.req.create_entity('Tag', name=u'x')
    54         t = self.req.create_entity('Tag', name=u'x')
    58         form1 = self.vreg['forms'].select('edition', self.req, entity=t)
    55         form1 = self.vreg['forms'].select('edition', self.req, entity=t)
    59         unrelated = [reid for rview, reid in form1.field_by_name('tags', 'subject', t.e_schema).choices(form1)]
    56         unrelated = [reid for rview, reid in form1.field_by_name('tags', 'subject', t.e_schema).choices(form1)]
    60         self.failUnless(b.eid in unrelated, unrelated)
    57         self.failUnless(unicode(b.eid) in unrelated, unrelated)
    61         form2 = self.vreg['forms'].select('edition', self.req, entity=b)
    58         form2 = self.vreg['forms'].select('edition', self.req, entity=b)
    62         unrelated = [reid for rview, reid in form2.field_by_name('tags', 'object', t.e_schema).choices(form2)]
    59         unrelated = [reid for rview, reid in form2.field_by_name('tags', 'object', t.e_schema).choices(form2)]
    63         self.failUnless(t.eid in unrelated, unrelated)
    60         self.failUnless(unicode(t.eid) in unrelated, unrelated)
    64         self.execute('SET X tags Y WHERE X is Tag, Y is BlogEntry')
    61         self.execute('SET X tags Y WHERE X is Tag, Y is BlogEntry')
    65         unrelated = [reid for rview, reid in form1.field_by_name('tags', 'subject', t.e_schema).choices(form1)]
    62         unrelated = [reid for rview, reid in form1.field_by_name('tags', 'subject', t.e_schema).choices(form1)]
    66         self.failIf(b.eid in unrelated, unrelated)
    63         self.failIf(unicode(b.eid) in unrelated, unrelated)
    67         unrelated = [reid for rview, reid in form2.field_by_name('tags', 'object', t.e_schema).choices(form2)]
    64         unrelated = [reid for rview, reid in form2.field_by_name('tags', 'object', t.e_schema).choices(form2)]
    68         self.failIf(t.eid in unrelated, unrelated)
    65         self.failIf(unicode(t.eid) in unrelated, unrelated)
    69 
    66 
    70 
    67 
    71     def test_form_field_vocabulary_new_entity(self):
    68     def test_form_field_vocabulary_new_entity(self):
    72         e = self.vreg['etypes'].etype_class('CWUser')(self.request())
    69         e = self.vreg['etypes'].etype_class('CWUser')(self.request())
    73         form = self.vreg['forms'].select('edition', self.req, entity=e)
    70         form = self.vreg['forms'].select('edition', self.req, entity=e)
   101 
    98 
   102     def test_reledit_composite_field(self):
    99     def test_reledit_composite_field(self):
   103         rset = self.execute('INSERT BlogEntry X: X title "cubicweb.org", X content "hop"')
   100         rset = self.execute('INSERT BlogEntry X: X title "cubicweb.org", X content "hop"')
   104         form = self.vreg['views'].select('doreledit', self.request(),
   101         form = self.vreg['views'].select('doreledit', self.request(),
   105                                          rset=rset, row=0, rtype='content')
   102                                          rset=rset, row=0, rtype='content')
   106         data = form.render(row=0, rtype='content')
   103         data = form.render(row=0, rtype='content', formid='base')
   107         self.failUnless('content_format' in data)
   104         self.failUnless('content_format' in data)
   108 
   105 
   109     # form view tests #########################################################
   106     # form view tests #########################################################
   110 
   107 
   111     def test_massmailing_formview(self):
   108     def test_massmailing_formview(self):