summaryrefslogtreecommitdiff
path: root/test/dependency.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-05-25 14:20:23 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-05-25 14:20:23 +0000
commitbb79e2e871d0a4585164c1a6ed626d96d0231975 (patch)
tree6d457ba6c36c408b45db24ec3c29e147fe7504ff /test/dependency.py
parent4fc3a0648699c2b441251ba4e1d37a9107bd1986 (diff)
downloadsqlalchemy-bb79e2e871d0a4585164c1a6ed626d96d0231975.tar.gz
merged 0.2 branch into trunk; 0.1 now in sqlalchemy/branches/rel_0_1
Diffstat (limited to 'test/dependency.py')
-rw-r--r--test/dependency.py66
1 files changed, 19 insertions, 47 deletions
diff --git a/test/dependency.py b/test/dependency.py
index 81165dc6d..d2b5bd698 100644
--- a/test/dependency.py
+++ b/test/dependency.py
@@ -1,5 +1,5 @@
from testbase import PersistTest
-import sqlalchemy.mapping.topological as topological
+import sqlalchemy.orm.topological as topological
import unittest, sys, os
@@ -17,26 +17,6 @@ class thingy(object):
return repr(self)
class DependencySortTest(PersistTest):
-
- def _assert_sort(self, tuples, allnodes, **kwargs):
-
- head = DependencySorter(tuples, allnodes).sort(**kwargs)
-
- print "\n" + str(head)
- def findnode(t, n, parent=False):
- if n.item is t[0] or (n.cycles is not None and t[0] in [c.item for c in n.cycles]):
- parent=True
- elif n.item is t[1]:
- if not parent and (n.cycles is None or t[0] not in [c.item for c in n.cycles]):
- self.assert_(False, "Node " + str(t[1]) + " not a child of " +str(t[0]))
- else:
- return
- for c in n.children:
- findnode(t, c, parent)
-
- for t in tuples:
- findnode(t, head)
-
def testsort(self):
rootnode = thingy('root')
node2 = thingy('node2')
@@ -47,7 +27,6 @@ class DependencySortTest(PersistTest):
subnode3 = thingy('subnode3')
subnode4 = thingy('subnode4')
subsubnode1 = thingy('subsubnode1')
- allnodes = [rootnode, node2,node3,node4,subnode1,subnode2,subnode3,subnode4,subsubnode1]
tuples = [
(subnode3, subsubnode1),
(node2, subnode1),
@@ -58,8 +37,8 @@ class DependencySortTest(PersistTest):
(node4, subnode3),
(node4, subnode4)
]
-
- self._assert_sort(tuples, allnodes)
+ head = DependencySorter(tuples, []).sort()
+ print "\n" + str(head)
def testsort2(self):
node1 = thingy('node1')
@@ -76,7 +55,8 @@ class DependencySortTest(PersistTest):
(node5, node6),
(node6, node2)
]
- self._assert_sort(tuples, [node1,node2,node3,node4,node5,node6,node7])
+ head = DependencySorter(tuples, [node7]).sort()
+ print "\n" + str(head)
def testsort3(self):
['Mapper|Keyword|keywords,Mapper|IKAssociation|itemkeywords', 'Mapper|Item|items,Mapper|IKAssociation|itemkeywords']
@@ -88,10 +68,15 @@ class DependencySortTest(PersistTest):
(node3, node2),
(node1,node3)
]
- self._assert_sort(tuples, [node1, node2, node3])
- self._assert_sort(tuples, [node3, node1, node2])
- self._assert_sort(tuples, [node3, node2, node1])
+ head1 = DependencySorter(tuples, [node1, node2, node3]).sort()
+ head2 = DependencySorter(tuples, [node3, node1, node2]).sort()
+ head3 = DependencySorter(tuples, [node3, node2, node1]).sort()
+ # TODO: figure out a "node == node2" function
+ #self.assert_(str(head1) == str(head2) == str(head3))
+ print "\n" + str(head1)
+ print "\n" + str(head2)
+ print "\n" + str(head3)
def testsort4(self):
node1 = thingy('keywords')
@@ -104,7 +89,8 @@ class DependencySortTest(PersistTest):
(node1, node3),
(node3, node2)
]
- self._assert_sort(tuples, [node1,node2,node3,node4])
+ head = DependencySorter(tuples, []).sort()
+ print "\n" + str(head)
def testsort5(self):
# this one, depenending on the weather,
@@ -131,24 +117,10 @@ class DependencySortTest(PersistTest):
node3,
node4
]
- self._assert_sort(tuples, allitems)
-
- def testsort6(self):
- #('tbl_c', 'tbl_d'), ('tbl_a', 'tbl_c'), ('tbl_b', 'tbl_d')
- nodea = thingy('tbl_a')
- nodeb = thingy('tbl_b')
- nodec = thingy('tbl_c')
- noded = thingy('tbl_d')
- tuples = [
- (nodec, noded),
- (nodea, nodec),
- (nodeb, noded)
- ]
- allitems = [nodea,nodeb,nodec,noded]
- self._assert_sort(tuples, allitems)
+ head = DependencySorter(tuples, allitems).sort()
+ print "\n" + str(head)
def testcircular(self):
- #print "TESTCIRCULAR"
node1 = thingy('node1')
node2 = thingy('node2')
node3 = thingy('node3')
@@ -162,8 +134,8 @@ class DependencySortTest(PersistTest):
(node3, node1),
(node4, node1)
]
- self._assert_sort(tuples, [node1,node2,node3,node4,node5], allow_all_cycles=True)
- #print "TESTCIRCULAR DONE"
+ head = DependencySorter(tuples, []).sort(allow_all_cycles=True)
+ print "\n" + str(head)
if __name__ == "__main__":