Skip to content

Commit f89efee

Browse files
committed
Merge branch 'sthenault-initialize'
2 parents ef10ba5 + d3281bf commit f89efee

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

sqlalchemy_mptt/tests/test_events.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,3 +175,25 @@ def test(self):
175175

176176
self.assertEqual(root.tree_id, 1)
177177
self.assertEqual(child.tree_id, 1)
178+
179+
180+
class InitialInsert(unittest.TestCase):
181+
"""Test case for initial insertion of node as specified in
182+
docs/initialize.rst
183+
"""
184+
def test_documented_initial_insert(self):
185+
from sqlalchemy_mptt import tree_manager
186+
187+
engine = create_engine('sqlite:///:memory:')
188+
Session = mptt_sessionmaker(sessionmaker(bind=engine))
189+
session = Session()
190+
Base.metadata.create_all(engine)
191+
192+
tree_manager.register_events(remove=True) # Disable MPTT events
193+
194+
for node_id, parent_id in [(1, None), (2, 1), (3, 1), (4, 2)]:
195+
session.add(Tree(id=node_id, parent_id=parent_id))
196+
session.commit()
197+
198+
tree_manager.register_events() # enabled MPTT events back
199+
Tree.rebuild_tree(session) # rebuild lft, rgt value automatically

0 commit comments

Comments
 (0)