test/unittest_entity.py
changeset 9638 3046bae3ce31
parent 9637 c6132d36e55d
child 9712 6c6cd8c4b256
equal deleted inserted replaced
9637:c6132d36e55d 9638:3046bae3ce31
   512             unrelated = [r[0] for r in e.unrelated('tags', 'Personne', 'subject')]
   512             unrelated = [r[0] for r in e.unrelated('tags', 'Personne', 'subject')]
   513             self.assertIn(p.eid, unrelated)
   513             self.assertIn(p.eid, unrelated)
   514             req.execute('SET X tags Y WHERE X is Tag, Y is Personne')
   514             req.execute('SET X tags Y WHERE X is Tag, Y is Personne')
   515             e = req.execute('Any X WHERE X is Tag').get_entity(0, 0)
   515             e = req.execute('Any X WHERE X is Tag').get_entity(0, 0)
   516             unrelated = [r[0] for r in e.unrelated('tags', 'Personne', 'subject')]
   516             unrelated = [r[0] for r in e.unrelated('tags', 'Personne', 'subject')]
   517             self.assertFalse(p.eid in unrelated)
   517             self.assertNotIn(p.eid, unrelated)
   518 
   518 
   519     def test_unrelated_limit(self):
   519     def test_unrelated_limit(self):
   520         with self.admin_access.web_request() as req:
   520         with self.admin_access.web_request() as req:
   521             e = req.create_entity('Tag', name=u'x')
   521             e = req.create_entity('Tag', name=u'x')
   522             req.create_entity('Personne', nom=u'di mascio', prenom=u'adrien')
   522             req.create_entity('Personne', nom=u'di mascio', prenom=u'adrien')
   692         with self.admin_access.web_request() as req:
   692         with self.admin_access.web_request() as req:
   693             p1 = req.create_entity('Personne', nom=u'di mascio', prenom=u'adrien')
   693             p1 = req.create_entity('Personne', nom=u'di mascio', prenom=u'adrien')
   694             p2 = req.create_entity('Personne', nom=u'toto')
   694             p2 = req.create_entity('Personne', nom=u'toto')
   695             req.execute('SET X evaluee Y WHERE X nom "di mascio", Y nom "toto"')
   695             req.execute('SET X evaluee Y WHERE X nom "di mascio", Y nom "toto"')
   696             self.assertEqual(p1.evaluee[0].nom, "toto")
   696             self.assertEqual(p1.evaluee[0].nom, "toto")
   697             self.assertTrue(not p1.reverse_evaluee)
   697             self.assertFalse(p1.reverse_evaluee)
   698 
   698 
   699     def test_complete_relation(self):
   699     def test_complete_relation(self):
   700         with self.admin_access.repo_cnx() as session:
   700         with self.admin_access.repo_cnx() as session:
   701             eid = session.execute(
   701             eid = session.execute(
   702                 'INSERT TrInfo X: X comment "zou", X wf_info_for U, X from_state S1, X to_state S2 '
   702                 'INSERT TrInfo X: X comment "zou", X wf_info_for U, X from_state S1, X to_state S2 '
   703                 'WHERE U login "admin", S1 name "activated", S2 name "deactivated"')[0][0]
   703                 'WHERE U login "admin", S1 name "activated", S2 name "deactivated"')[0][0]
   704             trinfo = session.execute('Any X WHERE X eid %(x)s', {'x': eid}).get_entity(0, 0)
   704             trinfo = session.execute('Any X WHERE X eid %(x)s', {'x': eid}).get_entity(0, 0)
   705             trinfo.complete()
   705             trinfo.complete()
   706             self.assertTrue(isinstance(trinfo.cw_attr_cache['creation_date'], datetime))
   706             self.assertIsInstance(trinfo.cw_attr_cache['creation_date'], datetime)
   707             self.assertTrue(trinfo.cw_relation_cached('from_state', 'subject'))
   707             self.assertTrue(trinfo.cw_relation_cached('from_state', 'subject'))
   708             self.assertTrue(trinfo.cw_relation_cached('to_state', 'subject'))
   708             self.assertTrue(trinfo.cw_relation_cached('to_state', 'subject'))
   709             self.assertTrue(trinfo.cw_relation_cached('wf_info_for', 'subject'))
   709             self.assertTrue(trinfo.cw_relation_cached('wf_info_for', 'subject'))
   710             self.assertEqual(trinfo.by_transition, ())
   710             self.assertEqual(trinfo.by_transition, ())
   711 
   711 
   712     def test_request_cache(self):
   712     def test_request_cache(self):
   713         with self.admin_access.web_request() as req:
   713         with self.admin_access.web_request() as req:
   714             user = req.execute('CWUser X WHERE X login "admin"').get_entity(0, 0)
   714             user = req.execute('CWUser X WHERE X login "admin"').get_entity(0, 0)
   715             state = user.in_state[0]
   715             state = user.in_state[0]
   716             samestate = req.execute('State X WHERE X name "activated"').get_entity(0, 0)
   716             samestate = req.execute('State X WHERE X name "activated"').get_entity(0, 0)
   717             self.assertTrue(state is samestate)
   717             self.assertIs(state, samestate)
   718 
   718 
   719     def test_rest_path(self):
   719     def test_rest_path(self):
   720         with self.admin_access.web_request() as req:
   720         with self.admin_access.web_request() as req:
   721             note = req.create_entity('Note', type=u'z')
   721             note = req.create_entity('Note', type=u'z')
   722             self.assertEqual(note.rest_path(), 'note/%s' % note.eid)
   722             self.assertEqual(note.rest_path(), 'note/%s' % note.eid)