diff options
Diffstat (limited to 'src/test/scala/chiselTests/UInt.scala')
| -rw-r--r-- | src/test/scala/chiselTests/UInt.scala | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/test/scala/chiselTests/UInt.scala b/src/test/scala/chiselTests/UInt.scala new file mode 100644 index 00000000..8885c71f --- /dev/null +++ b/src/test/scala/chiselTests/UInt.scala @@ -0,0 +1,32 @@ +package chiselTests + +import Chisel._ +import org.scalatest._ +import org.scalatest.prop._ +import Chisel.testers.BasicTester + +class GoodBoolConversion extends Module { + val io = new Bundle { + val u = UInt(1, width = 1).asInput + val b = Bool(OUTPUT) + } + io.b := io.u.toBool +} + +class BadBoolConversion extends Module { + val io = new Bundle { + val u = UInt(1, width = 5).asInput + val b = Bool(OUTPUT) + } + io.b := io.u.toBool +} + +class UIntSpec extends ChiselPropSpec with Matchers { + property("Bools can be created from 1 bit UInts") { + elaborate(new GoodBoolConversion) + } + + property("Bools cannot be created from >1 bit UInts") { + a [Exception] should be thrownBy { elaborate(new BadBoolConversion) } + } +} |
