From 34276cc90dd5b5b6203f7c4d1500446b65a45c26 Mon Sep 17 00:00:00 2001 From: Eruis2579 Date: Mon, 9 Feb 2026 08:54:40 +0100 Subject: [PATCH] test: Add tests for --version flag (#8717) --- .../src/test/scala/ExtendedRunnerTest.scala | 21 +++++++++++++++++++ .../src/test/scala/RunnerScriptTest.scala | 19 +++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/launcher-package/integration-test/src/test/scala/ExtendedRunnerTest.scala b/launcher-package/integration-test/src/test/scala/ExtendedRunnerTest.scala index 14dec7316..7f2147801 100755 --- a/launcher-package/integration-test/src/test/scala/ExtendedRunnerTest.scala +++ b/launcher-package/integration-test/src/test/scala/ExtendedRunnerTest.scala @@ -123,6 +123,27 @@ object ExtendedRunnerTest extends BasicTestSuite: () } + test("sbt --version in empty directory") { + IO.withTemporaryDirectory { tmp => + val out = sbtProcessInDir(tmp)("--version").!! + assert(out.contains("sbt runner version:")) + assert(out.contains("[info] sbt runner (sbt-the-shell-script)")) + } + () + } + + test("sbt --version in sbt 2.x project directory (#8717)") { + IO.withTemporaryDirectory { tmp => + IO.write(tmp / "build.sbt", "") + IO.write(tmp / "project" / "build.properties", "sbt.version=2.0.0-RC8") + val out = sbtProcessInDir(tmp)("--version").!! + assert(out.contains("sbt version in this project: 2.0.0-RC8")) + assert(out.contains("sbt runner version:")) + assert(out.contains("[info] sbt runner (sbt-the-shell-script)")) + } + () + } + test("sbt --jvm-client") { val out = sbtProcess("--jvm-client", "--no-colors", "compile").!!.linesIterator.toList if (isWindows) { diff --git a/launcher-package/integration-test/src/test/scala/RunnerScriptTest.scala b/launcher-package/integration-test/src/test/scala/RunnerScriptTest.scala index 5902615a4..af057c05c 100644 --- a/launcher-package/integration-test/src/test/scala/RunnerScriptTest.scala +++ b/launcher-package/integration-test/src/test/scala/RunnerScriptTest.scala @@ -129,6 +129,25 @@ object RunnerScriptTest extends verify.BasicTestSuite with ShellScriptUtil: assert(out.mkString(System.lineSeparator()).trim.matches(expectedVersion)) () + testOutput( + "sbt --version should work (sbt 1.x project)", + citestVariant = "citest", + )("--version"): (out: List[String]) => + val output = out.mkString(System.lineSeparator()) + assert(output.contains("sbt runner version:")) + assert(output.contains("[info] sbt runner (sbt-the-shell-script)")) + () + + testOutput( + "sbt --version should work (sbt 2.x project) (#8717)", + citestVariant = "citest2", + )("--version"): (out: List[String]) => + val output = out.mkString(System.lineSeparator()) + assert(output.contains("sbt version in this project:")) + assert(output.contains("sbt runner version:")) + assert(output.contains("[info] sbt runner (sbt-the-shell-script)")) + () + testOutput("--sbt-cache")("--sbt-cache", "./cachePath"): (out: List[String]) => assert(out.contains[String]("-Dsbt.global.localcache=./cachePath"))