From 743734c346d917edea3f00553c78c855e7f7e4eb Mon Sep 17 00:00:00 2001 From: peteraaser Date: Mon, 1 Jun 2020 17:42:31 +0200 Subject: [PATCH] Add windows test runner. --- src/test/scala/Manifest.scala | 29 ++++++++++++++++++++++++++++- src/test/scala/fileUtils.scala | 5 ++++- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/test/scala/Manifest.scala b/src/test/scala/Manifest.scala index cc6ed6b..89dd9fb 100644 --- a/src/test/scala/Manifest.scala +++ b/src/test/scala/Manifest.scala @@ -18,7 +18,7 @@ import LogParser._ object Manifest { - val singleTest = "forward2.s" + val singleTest = "addi.s" val nopPadded = false @@ -98,3 +98,30 @@ class AllTests extends FlatSpec with Matchers { } } } + + + +/** + * Not tested at all + */ +class AllTestsWindows extends FlatSpec with Matchers { + it should "just werk" in { + val werks = getAllWindowsTestNames.filterNot(_ == "convolution.s").map{testname => + say(s"testing $testname") + val opts = Manifest.allTestOptions(testname) + (testname, TestRunner.run(opts)) + } + if(werks.foldLeft(true)(_ && _._2)) + say(Console.GREEN + "All tests successful!" + Console.RESET) + else { + val success = werks.map(x => if(x._2) 1 else 0).sum + val total = werks.size + say(s"$success/$total tests successful") + werks.foreach{ case(name, success) => + val msg = if(success) Console.GREEN + s"$name successful" + Console.RESET + else Console.RED + s"$name failed" + Console.RESET + say(msg) + } + } + } +} diff --git a/src/test/scala/fileUtils.scala b/src/test/scala/fileUtils.scala index cfff3fa..6230dba 100644 --- a/src/test/scala/fileUtils.scala +++ b/src/test/scala/fileUtils.scala @@ -61,7 +61,10 @@ object fileUtils { def getAllTests: List[File] = getListOfFilesRecursive(getTestDir.getPath) .filter( f => f.getPath.endsWith(".s") ) - def getAllTestNames: List[String] = getAllTests.map(_.toString.split("/").takeRight(1).mkString) + def getAllTestNames: List[String] = getAllTests.map(_.toString.split("/").takeRight(1).mkString) + + // Not tested. + def getAllWindowsTestNames: List[String] = getAllTests.map(_.toString.split("\\\\").takeRight(1).mkString) def clearTestResults = { try {