diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-05-25 14:20:23 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-05-25 14:20:23 +0000 |
| commit | bb79e2e871d0a4585164c1a6ed626d96d0231975 (patch) | |
| tree | 6d457ba6c36c408b45db24ec3c29e147fe7504ff /test/dependency.py | |
| parent | 4fc3a0648699c2b441251ba4e1d37a9107bd1986 (diff) | |
| download | sqlalchemy-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.py | 66 |
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__": |
