equal
deleted
inserted
replaced
1 # -*- coding: utf-8 -*- |
1 # -*- coding: utf-8 -*- |
2 # copyright 2003-2013 LOGILAB S.A. (Paris, FRANCE), all rights reserved. |
2 # copyright 2003-2014 LOGILAB S.A. (Paris, FRANCE), all rights reserved. |
3 # contact http://www.logilab.fr/ -- mailto:contact@logilab.fr |
3 # contact http://www.logilab.fr/ -- mailto:contact@logilab.fr |
4 # |
4 # |
5 # This file is part of CubicWeb. |
5 # This file is part of CubicWeb. |
6 # |
6 # |
7 # CubicWeb is free software: you can redistribute it and/or modify it under the |
7 # CubicWeb is free software: you can redistribute it and/or modify it under the |
41 |
41 |
42 def tearDown(self): |
42 def tearDown(self): |
43 super(EntityTC, self).tearDown() |
43 super(EntityTC, self).tearDown() |
44 for cls in self.vreg['etypes'].iter_classes(): |
44 for cls in self.vreg['etypes'].iter_classes(): |
45 cls.fetch_attrs, cls.cw_fetch_order = self.backup_dict[cls] |
45 cls.fetch_attrs, cls.cw_fetch_order = self.backup_dict[cls] |
|
46 |
|
47 def test_no_prefill_related_cache_bug(self): |
|
48 session = self.session |
|
49 usine = session.create_entity('Usine', lieu=u'Montbeliard') |
|
50 produit = session.create_entity('Produit') |
|
51 # usine was prefilled in glob_add_entity |
|
52 # let's simulate produit creation without prefill |
|
53 produit._cw_related_cache.clear() |
|
54 # use add_relations |
|
55 session.add_relations([('fabrique_par', [(produit.eid, usine.eid)])]) |
|
56 self.assertEqual(1, len(usine.reverse_fabrique_par)) |
|
57 self.assertEqual(1, len(produit.fabrique_par)) |
46 |
58 |
47 def test_boolean_value(self): |
59 def test_boolean_value(self): |
48 e = self.vreg['etypes'].etype_class('CWUser')(self.request()) |
60 e = self.vreg['etypes'].etype_class('CWUser')(self.request()) |
49 self.assertTrue(e) |
61 self.assertTrue(e) |
50 |
62 |