test/unittest_entity.py
changeset 9770 112c884b2d8d
parent 9712 6c6cd8c4b256
parent 9769 d3f8866a48f5
child 9774 b7b71be569cf
--- a/test/unittest_entity.py	Wed Apr 09 17:29:25 2014 +0200
+++ b/test/unittest_entity.py	Tue Jun 10 09:49:45 2014 +0200
@@ -44,6 +44,18 @@
         for cls in self.vreg['etypes'].iter_classes():
             cls.fetch_attrs, cls.cw_fetch_order = self.backup_dict[cls]
 
+    def test_no_prefill_related_cache_bug(self):
+        session = self.session
+        usine = session.create_entity('Usine', lieu=u'Montbeliard')
+        produit = session.create_entity('Produit')
+        # usine was prefilled in glob_add_entity
+        # let's simulate produit creation without prefill
+        produit._cw_related_cache.clear()
+        # use add_relations
+        session.add_relations([('fabrique_par', [(produit.eid, usine.eid)])])
+        self.assertEqual(1, len(usine.reverse_fabrique_par))
+        self.assertEqual(1, len(produit.fabrique_par))
+
     def test_boolean_value(self):
         with self.admin_access.web_request() as req:
             e = self.vreg['etypes'].etype_class('CWUser')(req)