aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/test')
-rw-r--r--src/test/scala/firrtlTests/LoweringCompilersSpec.scala1
-rw-r--r--src/test/scala/firrtlTests/stage/FirrtlMainSpec.scala32
2 files changed, 31 insertions, 2 deletions
diff --git a/src/test/scala/firrtlTests/LoweringCompilersSpec.scala b/src/test/scala/firrtlTests/LoweringCompilersSpec.scala
index e1de7e34..f0f2042e 100644
--- a/src/test/scala/firrtlTests/LoweringCompilersSpec.scala
+++ b/src/test/scala/firrtlTests/LoweringCompilersSpec.scala
@@ -36,6 +36,7 @@ class LoweringCompilersSpec extends AnyFlatSpec with Matchers {
def legacyTransforms(a: CoreTransform): Seq[Transform] = a match {
case _: ChirrtlToHighFirrtl => Seq(
+ new firrtl.stage.transforms.CheckScalaVersion,
firrtl.passes.CheckChirrtl,
firrtl.passes.CInferTypes,
firrtl.passes.CInferMDir,
diff --git a/src/test/scala/firrtlTests/stage/FirrtlMainSpec.scala b/src/test/scala/firrtlTests/stage/FirrtlMainSpec.scala
index 1b4a1375..7d57f7ed 100644
--- a/src/test/scala/firrtlTests/stage/FirrtlMainSpec.scala
+++ b/src/test/scala/firrtlTests/stage/FirrtlMainSpec.scala
@@ -8,9 +8,10 @@ import org.scalatest.matchers.should.Matchers
import java.io.{File, PrintWriter}
-import firrtl.FileUtils
+import firrtl.{BuildInfo, FileUtils}
-import firrtl.stage.FirrtlMain
+import firrtl.stage.{FirrtlMain, SuppressScalaVersionWarning}
+import firrtl.stage.transforms.CheckScalaVersion
import firrtl.util.BackendCompilationUtilities
import org.scalatest.featurespec.AnyFeatureSpec
import org.scalatest.matchers.should.Matchers
@@ -159,6 +160,16 @@ class FirrtlMainSpec extends AnyFeatureSpec with GivenWhenThen with Matchers wit
|""".stripMargin
}
+ /** This returns a string containing the default standard out string based on the Scala version. E.g., if there are
+ * version-specific deprecation warnings, those are available here and can be passed to tests that should have them.
+ */
+ val defaultStdOut: Option[String] = BuildInfo.scalaVersion.split("\\.").toList match {
+ case "2" :: v :: _ :: Nil if v.toInt <= 11 =>
+ Some(CheckScalaVersion.deprecationMessage("2.11", s"--${SuppressScalaVersionWarning.longOption}"))
+ case x =>
+ None
+ }
+
info("As a FIRRTL command line user")
info("I want to compile some FIRRTL")
Feature("FirrtlMain command line interface") {
@@ -192,32 +203,43 @@ class FirrtlMainSpec extends AnyFeatureSpec with GivenWhenThen with Matchers wit
FirrtlMainTest(args = Array("-X", "none", "-E", "chirrtl"),
files = Seq("Top.fir")),
FirrtlMainTest(args = Array("-X", "high", "-E", "high"),
+ stdout = defaultStdOut,
files = Seq("Top.hi.fir")),
FirrtlMainTest(args = Array("-X", "middle", "-E", "middle", "-foaf", "Top"),
+ stdout = defaultStdOut,
files = Seq("Top.mid.fir", "Top.anno.json")),
FirrtlMainTest(args = Array("-X", "low", "-E", "low", "-foaf", "annotations.anno.json"),
+ stdout = defaultStdOut,
files = Seq("Top.lo.fir", "annotations.anno.json")),
FirrtlMainTest(args = Array("-X", "verilog", "-E", "verilog", "-foaf", "foo.anno"),
+ stdout = defaultStdOut,
files = Seq("Top.v", "foo.anno.anno.json")),
FirrtlMainTest(args = Array("-X", "sverilog", "-E", "sverilog", "-foaf", "foo.json"),
+ stdout = defaultStdOut,
files = Seq("Top.sv", "foo.json.anno.json")),
/* Test all one file per module emitters */
FirrtlMainTest(args = Array("-X", "none", "-e", "chirrtl"),
files = Seq("Top.fir", "Child.fir")),
FirrtlMainTest(args = Array("-X", "high", "-e", "high"),
+ stdout = defaultStdOut,
files = Seq("Top.hi.fir", "Child.hi.fir")),
FirrtlMainTest(args = Array("-X", "middle", "-e", "middle"),
+ stdout = defaultStdOut,
files = Seq("Top.mid.fir", "Child.mid.fir")),
FirrtlMainTest(args = Array("-X", "low", "-e", "low"),
+ stdout = defaultStdOut,
files = Seq("Top.lo.fir", "Child.lo.fir")),
FirrtlMainTest(args = Array("-X", "verilog", "-e", "verilog"),
+ stdout = defaultStdOut,
files = Seq("Top.v", "Child.v")),
FirrtlMainTest(args = Array("-X", "sverilog", "-e", "sverilog"),
+ stdout = defaultStdOut,
files = Seq("Top.sv", "Child.sv")),
/* Test mixing of -E with -e */
FirrtlMainTest(args = Array("-X", "middle", "-E", "high", "-e", "middle"),
+ stdout = defaultStdOut,
files = Seq("Top.hi.fir", "Top.mid.fir", "Child.mid.fir"),
notFiles = Seq("Child.hi.fir")),
@@ -225,14 +247,19 @@ class FirrtlMainSpec extends AnyFeatureSpec with GivenWhenThen with Matchers wit
FirrtlMainTest(args = Array("-X", "none", "-E", "chirrtl", "-o", "foo"),
files = Seq("foo.fir")),
FirrtlMainTest(args = Array("-X", "high", "-E", "high", "-o", "foo"),
+ stdout = defaultStdOut,
files = Seq("foo.hi.fir")),
FirrtlMainTest(args = Array("-X", "middle", "-E", "middle", "-o", "foo.middle"),
+ stdout = defaultStdOut,
files = Seq("foo.middle.mid.fir")),
FirrtlMainTest(args = Array("-X", "low", "-E", "low", "-o", "foo.lo.fir"),
+ stdout = defaultStdOut,
files = Seq("foo.lo.fir")),
FirrtlMainTest(args = Array("-X", "verilog", "-E", "verilog", "-o", "foo.sv"),
+ stdout = defaultStdOut,
files = Seq("foo.sv.v")),
FirrtlMainTest(args = Array("-X", "sverilog", "-E", "sverilog", "-o", "Foo"),
+ stdout = defaultStdOut,
files = Seq("Foo.sv"))
)
.foreach(runStageExpectFiles)
@@ -373,4 +400,5 @@ class FirrtlMainSpec extends AnyFeatureSpec with GivenWhenThen with Matchers wit
)
.foreach(runStageExpectFiles)
}
+
}