about summary refs log tree commit diff stats
path: root/test/core/graph.py
diff options
context:
space:
mode:
authorFabrice Desclaux <fabrice.desclaux@cea.fr>2015-02-25 12:49:20 +0100
committerserpilliere <fabrice.desclaux@cea.fr>2015-03-12 21:15:06 +0100
commitad83f2dcc19c273bc7f6991bac0ddfb9a556364c (patch)
tree924f4620fb8f549a4e1fe116669ede594946a41f /test/core/graph.py
parent0d7ddae798c44b327a5d9ef563b7c0bd201334bf (diff)
downloadmiasm-ad83f2dcc19c273bc7f6991bac0ddfb9a556364c.tar.gz
miasm-ad83f2dcc19c273bc7f6991bac0ddfb9a556364c.zip
Test/Graph: add reg tests
Diffstat (limited to 'test/core/graph.py')
-rw-r--r--test/core/graph.py44
1 files changed, 34 insertions, 10 deletions
diff --git a/test/core/graph.py b/test/core/graph.py
index b5bc4b80..40f34f5c 100644
--- a/test/core/graph.py
+++ b/test/core/graph.py
@@ -33,12 +33,12 @@ g1.add_edge(2, 6)
 
 
 dominators = g1.compute_dominators(1)
-assert(dominators[1] == set([1]))
-assert(dominators[2] == set([1, 2]))
-assert(dominators[3] == set([1, 2, 3]))
-assert(dominators[4] == set([1, 2, 4]))
-assert(dominators[5] == set([1, 2, 5]))
-assert(dominators[6] == set([1, 2, 6]))
+assert(dominators == {1: set([1]),
+                      2: set([1, 2]),
+                      3: set([1, 2, 3]),
+                      4: set([1, 2, 4]),
+                      5: set([1, 2, 5]),
+                      6: set([1, 2, 6])})
 
 # Regression test with multiple heads
 g2 = DiGraph()
@@ -49,7 +49,31 @@ g2.add_edge(5, 6)
 g2.add_edge(6, 3)
 
 dominators = g2.compute_dominators(5)
-assert(dominators[3] == set([3, 5, 6]))
-assert(dominators[4] == set([3, 4, 5, 6]))
-assert(dominators[5] == set([5]))
-assert(dominators[6] == set([5, 6]))
+assert(dominators == {3: set([3, 5, 6]),
+                      4: set([3, 4, 5, 6]),
+                      5: set([5]),
+                      6: set([5, 6])})
+
+
+postdominators = g1.compute_postdominators(6)
+assert(postdominators == {1: set([1, 2, 6]),
+                          2: set([2, 6]),
+                          3: set([2, 3, 5, 6]),
+                          4: set([2, 4, 5, 6]),
+                          5: set([2, 5, 6]),
+                          6: set([6])})
+
+postdominators = g1.compute_postdominators(5)
+assert(postdominators == {1: set([1, 2, 5]),
+                          2: set([2, 5]),
+                          3: set([3, 5]),
+                          4: set([4, 5]),
+                          5: set([5])})
+
+postdominators = g2.compute_postdominators(4)
+assert(postdominators == {1: set([1, 2, 3, 4]),
+                          2: set([2, 3, 4]),
+                          3: set([3, 4]),
+                          4: set([4]),
+                          5: set([3, 4, 5, 6]),
+                          6: set([3, 4, 6])})