[Native][tests] Split TestExecutable -> TestExecutable/TestRun (part 2)

This commit is contained in:
Dmitriy Dolovov
2021-11-12 17:25:49 +03:00
parent 55a2d5cb4a
commit 0e1c60d5ab
3 changed files with 5 additions and 5 deletions
@@ -10,13 +10,13 @@ import java.io.File
internal class TestExecutable( internal class TestExecutable(
val executableFile: File, val executableFile: File,
val origin: TestOrigin.SingleTestDataFile,
val loggedCompilerCall: LoggedData.CompilerCall val loggedCompilerCall: LoggedData.CompilerCall
) )
internal class TestRun( internal class TestRun(
val executable: TestExecutable, val executable: TestExecutable,
val runParameters: List<TestRunParameter> val runParameters: List<TestRunParameter>,
val origin: TestOrigin.SingleTestDataFile
) )
internal sealed interface TestRunParameter { internal sealed interface TestRunParameter {
@@ -51,7 +51,7 @@ internal class TestRunProvider(
} }
val (executableFile, loggedCompilerCall) = testCompilation.result.assertSuccess() // <-- Compilation happens here. val (executableFile, loggedCompilerCall) = testCompilation.result.assertSuccess() // <-- Compilation happens here.
val executable = TestExecutable(executableFile, testCase.origin, loggedCompilerCall) val executable = TestExecutable(executableFile, loggedCompilerCall)
val runParameters = when (testCase.kind) { val runParameters = when (testCase.kind) {
TestKind.STANDALONE_NO_TR -> listOfNotNull( TestKind.STANDALONE_NO_TR -> listOfNotNull(
@@ -69,7 +69,7 @@ internal class TestRunProvider(
) )
} }
return TestRun(executable, runParameters) return TestRun(executable, runParameters, testCase.origin)
} }
override fun close() { override fun close() {
@@ -12,7 +12,7 @@ internal fun TestRun.runAndVerify() {
val programArgs = mutableListOf<String>(executable.executableFile.path) val programArgs = mutableListOf<String>(executable.executableFile.path)
runParameters.forEach { it.applyTo(programArgs) } runParameters.forEach { it.applyTo(programArgs) }
val loggedParameters = LoggedData.TestRunParameters(executable.loggedCompilerCall, executable.origin, programArgs, runParameters) val loggedParameters = LoggedData.TestRunParameters(executable.loggedCompilerCall, origin, programArgs, runParameters)
val startTimeMillis = System.currentTimeMillis() val startTimeMillis = System.currentTimeMillis()
val process = ProcessBuilder(programArgs).directory(executable.executableFile.parentFile).start() val process = ProcessBuilder(programArgs).directory(executable.executableFile.parentFile).start()