aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/firrtlTests/graph
diff options
context:
space:
mode:
authorSchuyler Eldridge2018-02-23 18:03:42 -0500
committerAlbert Magyar2018-02-23 15:03:42 -0800
commitf295adc5e71e8970d8223552c4e9d0447bd72d1a (patch)
tree33dd29bf0108e08ada953908edf4f4f9c2ea224c /src/test/scala/firrtlTests/graph
parent46b78943a726e4c9bf85ffb25a2ccf926b10dda7 (diff)
Add graph summation "+" to DiGraph (#744)
* Add DiGraph sum and DiGraph sum test Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com> * Make DiGraph sum deterministic Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com> * Remove ordered hashes/sets from DiGraphTests Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
Diffstat (limited to 'src/test/scala/firrtlTests/graph')
-rw-r--r--src/test/scala/firrtlTests/graph/DiGraphTests.scala14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/test/scala/firrtlTests/graph/DiGraphTests.scala b/src/test/scala/firrtlTests/graph/DiGraphTests.scala
index b9f51699..147b22d7 100644
--- a/src/test/scala/firrtlTests/graph/DiGraphTests.scala
+++ b/src/test/scala/firrtlTests/graph/DiGraphTests.scala
@@ -58,4 +58,18 @@ class DiGraphTests extends FirrtlFlatSpec {
tupleGraph.transformNodes(_._1).getEdgeMap should contain ("a" -> Set("b", "c"))
}
+ "Graph summation" should "be order-wise equivalent to original" in {
+ val first = acyclicGraph.subgraph(Set("a", "b", "c"))
+ val second = acyclicGraph.subgraph(Set("b", "c", "d", "e"))
+
+ (first + second).getEdgeMap should equal (acyclicGraph.getEdgeMap)
+ }
+
+ it should "be idempotent" in {
+ val first = acyclicGraph.subgraph(Set("a", "b", "c"))
+ val second = acyclicGraph.subgraph(Set("b", "c", "d", "e"))
+
+ (first + second + second + second).getEdgeMap should equal (acyclicGraph.getEdgeMap)
+ }
+
}