From cfd0df9449cea2ff0ddc4ed7ec17919a3816d817 Mon Sep 17 00:00:00 2001 From: Yuta Saito Date: Sun, 25 Feb 2024 17:25:44 +0900 Subject: [PATCH] Allow non-wasmer runtime for testing --- Sources/CartonCLI/Commands/Test.swift | 2 +- ...erTestRunner.swift => CommandTestRunner.swift} | 15 ++++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) rename Sources/CartonCLI/Commands/TestRunners/{WasmerTestRunner.swift => CommandTestRunner.swift} (65%) diff --git a/Sources/CartonCLI/Commands/Test.swift b/Sources/CartonCLI/Commands/Test.swift index 893178a..fa8a77d 100644 --- a/Sources/CartonCLI/Commands/Test.swift +++ b/Sources/CartonCLI/Commands/Test.swift @@ -108,7 +108,7 @@ struct Test: AsyncParsableCommand { switch environment { case .command: - try await WasmerTestRunner( + try await CommandTestRunner( testFilePath: bundlePath, listTestCases: list, testCases: testCases, diff --git a/Sources/CartonCLI/Commands/TestRunners/WasmerTestRunner.swift b/Sources/CartonCLI/Commands/TestRunners/CommandTestRunner.swift similarity index 65% rename from Sources/CartonCLI/Commands/TestRunners/WasmerTestRunner.swift rename to Sources/CartonCLI/Commands/TestRunners/CommandTestRunner.swift index 24ee157..0f2d6e6 100644 --- a/Sources/CartonCLI/Commands/TestRunners/WasmerTestRunner.swift +++ b/Sources/CartonCLI/Commands/TestRunners/CommandTestRunner.swift @@ -16,22 +16,23 @@ import CartonHelpers import CartonKit import Foundation -struct WasmerTestRunner: TestRunner { +struct CommandTestRunner: TestRunner { let testFilePath: AbsolutePath let listTestCases: Bool let testCases: [String] let terminal: InteractiveWriter func run() async throws { - terminal.write("\nRunning the test bundle with wasmer:\n", inColor: .yellow) - var wasmerArguments = ["wasmer", testFilePath.pathString] + let program = ProcessInfo.processInfo.environment["CARTON_TEST_RUNNER"] ?? "wasmer" + terminal.write("\nRunning the test bundle with \"\(program)\":\n", inColor: .yellow) + var arguments = [program, testFilePath.pathString] if listTestCases { - wasmerArguments.append(contentsOf: ["--", "-l"]) + arguments.append(contentsOf: ["--", "-l"]) } else if !testCases.isEmpty { - wasmerArguments.append("--") - wasmerArguments.append(contentsOf: testCases) + arguments.append("--") + arguments.append(contentsOf: testCases) } - try await Process.run(wasmerArguments, parser: TestsParser(), terminal) + try await Process.run(arguments, parser: TestsParser(), terminal) } }