summaryrefslogtreecommitdiff
path: root/src/test/scala/chiselTests/util/experimental
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/chiselTests/util/experimental')
-rw-r--r--src/test/scala/chiselTests/util/experimental/TruthTableSpec.scala17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/test/scala/chiselTests/util/experimental/TruthTableSpec.scala b/src/test/scala/chiselTests/util/experimental/TruthTableSpec.scala
index fa2c6f08..9b2dd600 100644
--- a/src/test/scala/chiselTests/util/experimental/TruthTableSpec.scala
+++ b/src/test/scala/chiselTests/util/experimental/TruthTableSpec.scala
@@ -104,4 +104,21 @@ class TruthTableSpec extends AnyFlatSpec {
assert(t.toString contains "111->?")
assert(t.toString contains " 0")
}
+
+ "Using TruthTable.fromEspressoOutput" should "merge rows on conflict" in {
+ val mapping = List(
+ (BitPat("b110"), BitPat("b001")),
+ (BitPat("b111"), BitPat("b001")),
+ (BitPat("b111"), BitPat("b010")),
+ (BitPat("b111"), BitPat("b100"))
+ )
+
+ assert(
+ TruthTable.fromEspressoOutput(mapping, BitPat("b?")) ==
+ TruthTable.fromString("""110->001
+ |111->111
+ |?
+ |""".stripMargin)
+ )
+ }
}