From ef8f06f23b9ee6cf86de2450752dfd0fcd32da80 Mon Sep 17 00:00:00 2001 From: Schuyler Eldridge Date: Mon, 22 Apr 2019 21:20:08 -0400 Subject: Add ShellOption, DeletedWrapper Abstracts away option writing such that users no longer have to understand scopt semantics. This adds a ShellOption class and a HasShellOptions trait for something which provides one or more ShellOptions. This refactors the FIRRTL codebase to use this style of option specification. Adds and uses DeletedWrapper to automatically generate DeletedAnnotations. Signed-off-by: Schuyler Eldridge --- src/test/scala/firrtlTests/options/phases/ChecksSpec.scala | 4 ++-- src/test/scala/firrtlTests/options/phases/GetIncludesSpec.scala | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) (limited to 'src/test/scala/firrtlTests/options/phases') diff --git a/src/test/scala/firrtlTests/options/phases/ChecksSpec.scala b/src/test/scala/firrtlTests/options/phases/ChecksSpec.scala index e04ba554..b988f838 100644 --- a/src/test/scala/firrtlTests/options/phases/ChecksSpec.scala +++ b/src/test/scala/firrtlTests/options/phases/ChecksSpec.scala @@ -13,14 +13,14 @@ class ChecksSpec extends FlatSpec with Matchers { val targetDir = TargetDirAnnotation("foo") val annoOut = OutputAnnotationFileAnnotation("bar") + class Fixture { val phase: Phase = new Checks } + /* A minimum annotation Seq that will pass [[Checks]] */ val min = Seq(targetDir) def checkExceptionMessage(phase: Phase, annotations: AnnotationSeq, messageStart: String): Unit = intercept[OptionsException]{ phase.transform(annotations) }.getMessage should startWith(messageStart) - class Fixture { val phase: Phase = new Checks } - behavior of classOf[Checks].toString it should "enforce exactly one TargetDirAnnotation" in new Fixture { diff --git a/src/test/scala/firrtlTests/options/phases/GetIncludesSpec.scala b/src/test/scala/firrtlTests/options/phases/GetIncludesSpec.scala index 5b07d0e0..1007ca8c 100644 --- a/src/test/scala/firrtlTests/options/phases/GetIncludesSpec.scala +++ b/src/test/scala/firrtlTests/options/phases/GetIncludesSpec.scala @@ -21,7 +21,6 @@ case object E extends NoTargetAnnotation class GetIncludesSpec extends FlatSpec with Matchers with BackendCompilationUtilities with firrtlTests.Utils { - val dir = new File("test_run_dir/GetIncludesSpec") dir.mkdirs() -- cgit v1.2.3