summaryrefslogtreecommitdiff
path: root/src/test/scala/chiselTests/Decoder.scala
diff options
context:
space:
mode:
authorChick Markley2020-01-21 15:47:43 -0800
committerGitHub2020-01-21 15:47:43 -0800
commit7341082e3c5b08dc9d1a01937b5aad55e9833603 (patch)
treedbfabb158592e44028ebecf9610e1fa896c9a497 /src/test/scala/chiselTests/Decoder.scala
parentc7715c160a0dd07765e736b813c8b6b26b27de28 (diff)
parent76c986ebb2107c9872479d478d0e269ad5e5b08a (diff)
Merge pull request #1283 from freechipsproject/fix-bitpat-whitespace
BitPat supports whitespace and underscores
Diffstat (limited to 'src/test/scala/chiselTests/Decoder.scala')
-rw-r--r--src/test/scala/chiselTests/Decoder.scala14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/test/scala/chiselTests/Decoder.scala b/src/test/scala/chiselTests/Decoder.scala
index 59ad6324..44cacccc 100644
--- a/src/test/scala/chiselTests/Decoder.scala
+++ b/src/test/scala/chiselTests/Decoder.scala
@@ -36,8 +36,18 @@ class DecoderSpec extends ChiselPropSpec {
val bitpatPair = for(seed <- Arbitrary.arbitrary[Int]) yield {
val rnd = new scala.util.Random(seed)
val bs = seed.toBinaryString
- val bp = bs.map(if(rnd.nextBoolean) _ else "?").mkString
- ("b" + bs, "b" + bp)
+ val bp = bs.map(if(rnd.nextBoolean) _ else "?")
+
+ // The following randomly throws in white space and underscores which are legal and ignored.
+ val bpp = bp.map { a =>
+ if (rnd.nextBoolean) {
+ a
+ } else {
+ a + (if (rnd.nextBoolean) "_" else " ")
+ }
+ }.mkString
+
+ ("b" + bs, "b" + bpp)
}
private def nPairs(n: Int) = Gen.containerOfN[List, (String,String)](n,bitpatPair)