test/unittest_entity.py
changeset 7827 9bbf83f68bcc
parent 7798 8930f7a284dd
child 7973 64639bc94e25
equal deleted inserted replaced
7821:3ecd114f6d75 7827:9bbf83f68bcc
    31 
    31 
    32     def setUp(self):
    32     def setUp(self):
    33         super(EntityTC, self).setUp()
    33         super(EntityTC, self).setUp()
    34         self.backup_dict = {}
    34         self.backup_dict = {}
    35         for cls in self.vreg['etypes'].iter_classes():
    35         for cls in self.vreg['etypes'].iter_classes():
    36             self.backup_dict[cls] = (cls.fetch_attrs, cls.fetch_order)
    36             self.backup_dict[cls] = (cls.fetch_attrs, cls.cw_fetch_order)
    37 
    37 
    38     def tearDown(self):
    38     def tearDown(self):
    39         super(EntityTC, self).tearDown()
    39         super(EntityTC, self).tearDown()
    40         for cls in self.vreg['etypes'].iter_classes():
    40         for cls in self.vreg['etypes'].iter_classes():
    41             cls.fetch_attrs, cls.fetch_order = self.backup_dict[cls]
    41             cls.fetch_attrs, cls.cw_fetch_order = self.backup_dict[cls]
    42 
    42 
    43     def test_boolean_value(self):
    43     def test_boolean_value(self):
    44         e = self.vreg['etypes'].etype_class('CWUser')(self.request())
    44         e = self.vreg['etypes'].etype_class('CWUser')(self.request())
    45         self.assertTrue(e)
    45         self.assertTrue(e)
    46 
    46 
   226     def test_related_rql_base(self):
   226     def test_related_rql_base(self):
   227         Personne = self.vreg['etypes'].etype_class('Personne')
   227         Personne = self.vreg['etypes'].etype_class('Personne')
   228         Note = self.vreg['etypes'].etype_class('Note')
   228         Note = self.vreg['etypes'].etype_class('Note')
   229         SubNote = self.vreg['etypes'].etype_class('SubNote')
   229         SubNote = self.vreg['etypes'].etype_class('SubNote')
   230         self.assertTrue(issubclass(self.vreg['etypes'].etype_class('SubNote'), Note))
   230         self.assertTrue(issubclass(self.vreg['etypes'].etype_class('SubNote'), Note))
   231         Personne.fetch_attrs, Personne.fetch_order = fetch_config(('nom', 'type'))
   231         Personne.fetch_attrs, Personne.cw_fetch_order = fetch_config(('nom', 'type'))
   232         Note.fetch_attrs, Note.fetch_order = fetch_config(('type',))
   232         Note.fetch_attrs, Note.cw_fetch_order = fetch_config(('type',))
   233         SubNote.fetch_attrs, SubNote.fetch_order = fetch_config(('type',))
   233         SubNote.fetch_attrs, SubNote.cw_fetch_order = fetch_config(('type',))
   234         p = self.request().create_entity('Personne', nom=u'pouet')
   234         p = self.request().create_entity('Personne', nom=u'pouet')
   235         self.assertEqual(p.cw_related_rql('evaluee'),
   235         self.assertEqual(p.cw_related_rql('evaluee'),
   236                          'Any X,AA,AB ORDERBY AA WHERE E eid %(x)s, E evaluee X, '
   236                          'Any X,AA,AB ORDERBY AA WHERE E eid %(x)s, E evaluee X, '
   237                          'X type AA, X modification_date AB')
   237                          'X type AA, X modification_date AB')
   238         n = self.request().create_entity('Note')
   238         n = self.request().create_entity('Note')
   239         self.assertEqual(n.cw_related_rql('evaluee', role='object',
   239         self.assertEqual(n.cw_related_rql('evaluee', role='object',
   240                                           targettypes=('Societe', 'Personne')),
   240                                           targettypes=('Societe', 'Personne')),
   241                          "Any X,AA ORDERBY AB DESC WHERE E eid %(x)s, X evaluee E, "
   241                          "Any X,AA ORDERBY AB DESC WHERE E eid %(x)s, X evaluee E, "
   242                          "X is IN('Personne', 'Societe'), X nom AA, "
   242                          "X is IN('Personne', 'Societe'), X nom AA, "
   243                          "X modification_date AB")
   243                          "X modification_date AB")
   244         Personne.fetch_attrs, Personne.fetch_order = fetch_config(('nom', ))
   244         Personne.fetch_attrs, Personne.cw_fetch_order = fetch_config(('nom', ))
   245         # XXX
   245         # XXX
   246         self.assertEqual(p.cw_related_rql('evaluee'),
   246         self.assertEqual(p.cw_related_rql('evaluee'),
   247                           'Any X,AA ORDERBY AA DESC '
   247                           'Any X,AA ORDERBY AA DESC '
   248                           'WHERE E eid %(x)s, E evaluee X, X modification_date AA')
   248                           'WHERE E eid %(x)s, E evaluee X, X modification_date AA')
   249 
   249