[IR][tests] Ignore muted ABI compatibility tests

This commit is contained in:
Dmitriy Dolovov
2022-08-29 16:44:01 +02:00
committed by Space Team
parent 6f8c2a36f9
commit b5655dfaac
2 changed files with 12 additions and 3 deletions
@@ -55,7 +55,8 @@ abstract class AbstractKlibABITestCase : KtUsefulTestCase() {
stdlibFile = stdlibFile(),
buildKlib = ::buildKlib,
buildBinaryAndRun = ::buildBinaryAndRun,
onNonEmptyBuildDirectory = { directory -> directory.listFiles()?.forEach(File::deleteRecursively) }
onNonEmptyBuildDirectory = { directory -> directory.listFiles()?.forEach(File::deleteRecursively) },
onIgnoredTest = { /* Do nothing specific. JUnit 3 does not support programmatic tests muting. */ }
)
companion object {
@@ -65,13 +66,19 @@ abstract class AbstractKlibABITestCase : KtUsefulTestCase() {
stdlibFile: File,
buildKlib: (moduleName: String, moduleSourceDir: File, moduleDependencies: Collection<File>, klibFile: File) -> Unit,
buildBinaryAndRun: (mainModuleKlibFile: File, allDependencies: Collection<File>) -> Unit,
onNonEmptyBuildDirectory: (directory: File) -> Unit
onNonEmptyBuildDirectory: (directory: File) -> Unit,
onIgnoredTest: () -> Unit
) {
val projectName = testDir.name
val projectInfoFile = File(testDir, PROJECT_INFO_FILE)
val projectInfo: ProjectInfo = ProjectInfoParser(projectInfoFile).parse(projectName)
if (projectInfo.muted) {
onIgnoredTest() // Ignore muted tests.
return
}
val modulesMap: Map<String, ModuleUnderTest> = buildMap {
projectInfo.modules.forEach { moduleName ->
val moduleTestDir = File(testDir, moduleName)
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.konan.blackboxtest.support.runner.TestRunChecks
import org.jetbrains.kotlin.konan.blackboxtest.support.settings.*
import org.jetbrains.kotlin.konan.blackboxtest.support.util.*
import org.junit.jupiter.api.Tag
import org.opentest4j.TestAbortedException
import java.io.File
@Tag("klib-abi")
@@ -30,7 +31,8 @@ abstract class AbstractNativeKlibABITest : AbstractNativeSimpleTest() {
stdlibFile = stdlibFile,
buildKlib = ::buildKlib,
buildBinaryAndRun = { _, allDependencies -> buildBinaryAndRun(allDependencies) },
onNonEmptyBuildDirectory = ::backupDirectoryContents
onNonEmptyBuildDirectory = ::backupDirectoryContents,
onIgnoredTest = { throw TestAbortedException() }
)
private fun buildKlib(moduleName: String, moduleSourceDir: File, moduleDependencies: Collection<File>, klibFile: File) {