[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(), stdlibFile = stdlibFile(),
buildKlib = ::buildKlib, buildKlib = ::buildKlib,
buildBinaryAndRun = ::buildBinaryAndRun, 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 { companion object {
@@ -65,13 +66,19 @@ abstract class AbstractKlibABITestCase : KtUsefulTestCase() {
stdlibFile: File, stdlibFile: File,
buildKlib: (moduleName: String, moduleSourceDir: File, moduleDependencies: Collection<File>, klibFile: File) -> Unit, buildKlib: (moduleName: String, moduleSourceDir: File, moduleDependencies: Collection<File>, klibFile: File) -> Unit,
buildBinaryAndRun: (mainModuleKlibFile: File, allDependencies: Collection<File>) -> Unit, buildBinaryAndRun: (mainModuleKlibFile: File, allDependencies: Collection<File>) -> Unit,
onNonEmptyBuildDirectory: (directory: File) -> Unit onNonEmptyBuildDirectory: (directory: File) -> Unit,
onIgnoredTest: () -> Unit
) { ) {
val projectName = testDir.name val projectName = testDir.name
val projectInfoFile = File(testDir, PROJECT_INFO_FILE) val projectInfoFile = File(testDir, PROJECT_INFO_FILE)
val projectInfo: ProjectInfo = ProjectInfoParser(projectInfoFile).parse(projectName) val projectInfo: ProjectInfo = ProjectInfoParser(projectInfoFile).parse(projectName)
if (projectInfo.muted) {
onIgnoredTest() // Ignore muted tests.
return
}
val modulesMap: Map<String, ModuleUnderTest> = buildMap { val modulesMap: Map<String, ModuleUnderTest> = buildMap {
projectInfo.modules.forEach { moduleName -> projectInfo.modules.forEach { moduleName ->
val moduleTestDir = File(testDir, 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.settings.*
import org.jetbrains.kotlin.konan.blackboxtest.support.util.* import org.jetbrains.kotlin.konan.blackboxtest.support.util.*
import org.junit.jupiter.api.Tag import org.junit.jupiter.api.Tag
import org.opentest4j.TestAbortedException
import java.io.File import java.io.File
@Tag("klib-abi") @Tag("klib-abi")
@@ -30,7 +31,8 @@ abstract class AbstractNativeKlibABITest : AbstractNativeSimpleTest() {
stdlibFile = stdlibFile, stdlibFile = stdlibFile,
buildKlib = ::buildKlib, buildKlib = ::buildKlib,
buildBinaryAndRun = { _, allDependencies -> buildBinaryAndRun(allDependencies) }, buildBinaryAndRun = { _, allDependencies -> buildBinaryAndRun(allDependencies) },
onNonEmptyBuildDirectory = ::backupDirectoryContents onNonEmptyBuildDirectory = ::backupDirectoryContents,
onIgnoredTest = { throw TestAbortedException() }
) )
private fun buildKlib(moduleName: String, moduleSourceDir: File, moduleDependencies: Collection<File>, klibFile: File) { private fun buildKlib(moduleName: String, moduleSourceDir: File, moduleDependencies: Collection<File>, klibFile: File) {