diff options
author | Christopher Vogt <oss.nsp@cvogt.org> | 2017-03-12 13:02:51 -0400 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2017-03-12 15:29:47 -0400 |
commit | 8567e2557467f838e371fd8e6b267d5a417ef78e (patch) | |
tree | 869e53308505bfe80c987221c4d7c967280ab7c5 /test | |
parent | f35f2e0dbabb68511166b647a5018d7f57adcd9a (diff) | |
download | cbt-8567e2557467f838e371fd8e6b267d5a417ef78e.tar.gz cbt-8567e2557467f838e371fd8e6b267d5a417ef78e.tar.bz2 cbt-8567e2557467f838e371fd8e6b267d5a417ef78e.zip |
force successful shellcheck linting for launcher script
Diffstat (limited to 'test')
-rw-r--r-- | test/test.scala | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/test/test.scala b/test/test.scala index 4d1d7fb..bbecd94 100644 --- a/test/test.scala +++ b/test/test.scala @@ -14,17 +14,27 @@ object Main{ implicit val logger: Logger = new Logger(args.enabledLoggers, System.currentTimeMillis) val lib = new Lib(logger) val cbtHome = new File(System.getenv("CBT_HOME")) - val slow = ( System.getenv("CIRCLECI") != null // enable only on circle || args.args.contains("slow") ) val compat = !args.args.contains("no-compat") + val shellcheck = !args.args.contains("no-shellcheck") if(!slow) System.err.println( "Skipping slow tests" ) if(!compat) System.err.println( "Skipping cbt version compatibility tests" ) + if(shellcheck){ + val pb = new ProcessBuilder( "/usr/bin/env", "shellcheck", (cbtHome / "cbt").string ) + val p = pb.start + val out = new java.io.InputStreamReader(p.getInputStream) + val errors = Iterator.continually(out.read).takeWhile(_ != -1).map(_.toChar).mkString + if( p.waitFor != 0 ){ + throw new Exception("Linting error in ./cbt bash launcher script:\n" + errors) + } + } else System.err.println( "Skipping shellcheck" ) + var successes = 0 var failures = 0 def assertException[T:scala.reflect.ClassTag](msg: String = "")(code: => Unit)(implicit logger: Logger) = { |