summaryrefslogtreecommitdiff
path: root/src/test/scala/chiselTests/Module.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/chiselTests/Module.scala')
-rw-r--r--src/test/scala/chiselTests/Module.scala11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/test/scala/chiselTests/Module.scala b/src/test/scala/chiselTests/Module.scala
index dc44838a..b3d1899c 100644
--- a/src/test/scala/chiselTests/Module.scala
+++ b/src/test/scala/chiselTests/Module.scala
@@ -65,7 +65,14 @@ class ModuleRewrap extends Module {
class ModuleWrapper(gen: => Module) extends Module {
val io = IO(new Bundle{})
val child = Module(gen)
+ override val desiredName = s"${child.desiredName}Wrapper"
+}
+
+class NullModuleWrapper extends Module {
+ val io = IO(new Bundle{})
override lazy val desiredName = s"${child.desiredName}Wrapper"
+ println(s"My name is ${name}")
+ val child = Module(new ModuleWire)
}
class ModuleSpec extends ChiselPropSpec {
@@ -147,4 +154,8 @@ class ModuleSpec extends ChiselPropSpec {
property("A desiredName parameterized by a submodule should work") {
Driver.elaborate(() => new ModuleWrapper(new ModuleWire)).name should be ("ModuleWireWrapper")
}
+ property("A name generating a null pointer exception should provide a good error message") {
+ (the [Exception] thrownBy (Driver.elaborate(() => new NullModuleWrapper)))
+ .getMessage should include ("desiredName of chiselTests.NullModuleWrapper is null")
+ }
}