summaryrefslogtreecommitdiff
path: root/test/git/async/test_graph.py
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2010-06-10 23:55:50 +0200
committerSebastian Thiel <byronimo@gmail.com>2010-06-10 23:55:50 +0200
commitfbe062bf6dacd3ad63dd827d898337fa542931ac (patch)
treee3cac995265e0472f5ff9a2cc42f3c9e2eafaf95 /test/git/async/test_graph.py
parentc34343d0b714d2c4657972020afea034a167a682 (diff)
downloadgitpython-fbe062bf6dacd3ad63dd827d898337fa542931ac.tar.gz
Added dependency-task tests, and fixed plenty of ref-count related bugs, as well as concurrency issues. Now it works okay, but the thread-shutdown is still an issue, as it causes incorrect behaviour making the tests fail. Its good, as it hints at additional issues that need to be solved. There is just a little more left on the feature side, but its nearly there
Diffstat (limited to 'test/git/async/test_graph.py')
-rw-r--r--test/git/async/test_graph.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/test/git/async/test_graph.py b/test/git/async/test_graph.py
index d0e36159..7630226b 100644
--- a/test/git/async/test_graph.py
+++ b/test/git/async/test_graph.py
@@ -3,6 +3,7 @@ from test.testlib import *
from git.async.graph import *
import time
+import sys
class TestGraph(TestBase):
@@ -19,7 +20,7 @@ class TestGraph(TestBase):
# delete unconnected nodes
for n in g.nodes[:]:
- g.del_node(n)
+ g.remove_node(n)
# END del nodes
# add a chain of connected nodes
@@ -54,8 +55,8 @@ class TestGraph(TestBase):
# deleting a connected node clears its neighbour connections
assert n3.in_nodes[0] is n2
- assert g.del_node(n2) is g
- assert g.del_node(n2) is g # multi-deletion okay
+ assert g.remove_node(n2) is g
+ assert g.remove_node(n2) is g # multi-deletion okay
assert len(g.nodes) == nn - 1
assert len(n3.in_nodes) == 0
assert len(n1.out_nodes) == 0
@@ -68,3 +69,12 @@ class TestGraph(TestBase):
assert dfirst_nodes[-1] == end and dfirst_nodes[-2].id == end.id-1
+ # test cleanup
+ # its at least kept by its graph
+ assert sys.getrefcount(end) > 3
+ del(g)
+ del(n1); del(n2); del(n3)
+ del(dfirst_nodes)
+ del(last)
+ del(n)
+ assert sys.getrefcount(end) == 2