diff options
author | Raphaël Barrois <raphael.barrois@polytechnique.org> | 2014-11-02 16:32:16 +0100 |
---|---|---|
committer | Raphaël Barrois <raphael.barrois@polytechnique.org> | 2014-11-02 16:32:16 +0100 |
commit | 70412551c545e94b27bef468cd248fce7a9cdd96 (patch) | |
tree | 62c237a950c4c2cc9a935deba34fad4f4d1dbc65 /tests/test_using.py | |
parent | f81aba229a7492b11a331407f60fba1bd4d6522c (diff) | |
download | factory-boy-70412551c545e94b27bef468cd248fce7a9cdd96.tar factory-boy-70412551c545e94b27bef468cd248fce7a9cdd96.tar.gz |
Add tests for self-referential models (See #173).
Diffstat (limited to 'tests/test_using.py')
-rw-r--r-- | tests/test_using.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/test_using.py b/tests/test_using.py index f18df4d..8d78789 100644 --- a/tests/test_using.py +++ b/tests/test_using.py @@ -1938,6 +1938,23 @@ class CircularTestCase(unittest.TestCase): self.assertIsNone(b.foo.bar.foo.bar) +class SelfReferentialTests(unittest.TestCase): + def test_no_parent(self): + from .cyclic import self_ref + + obj = self_ref.TreeElementFactory(parent=None) + self.assertIsNone(obj.parent) + + def test_deep(self): + from .cyclic import self_ref + + obj = self_ref.TreeElementFactory(parent__parent__parent__parent=None) + self.assertIsNotNone(obj.parent) + self.assertIsNotNone(obj.parent.parent) + self.assertIsNotNone(obj.parent.parent.parent) + self.assertIsNone(obj.parent.parent.parent.parent) + + class DictTestCase(unittest.TestCase): def test_empty_dict(self): class TestObjectFactory(factory.Factory): |