From 5bd0bbb1595cf04ca1a1aef373b564d2140affaf Mon Sep 17 00:00:00 2001 From: Alexander Shabalin Date: Tue, 6 Feb 2024 23:40:36 +0100 Subject: [PATCH] [K/N][tests] Regroup runtime tests ^KT-53776 --- .../kotlin/bitcode/CompileToBitcodePlugin.kt | 2 +- kotlin-native/runtime/build.gradle.kts | 149 ++++++++++-------- 2 files changed, 83 insertions(+), 68 deletions(-) diff --git a/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/bitcode/CompileToBitcodePlugin.kt b/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/bitcode/CompileToBitcodePlugin.kt index 83d1c019b99..2e7f1fa40c7 100644 --- a/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/bitcode/CompileToBitcodePlugin.kt +++ b/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/bitcode/CompileToBitcodePlugin.kt @@ -614,7 +614,7 @@ open class CompileToBitcodeExtension @Inject constructor(val project: Project) : this.executionTimeout.set( (project.findProperty("gtest_timeout") as? String)?.let { Duration.parse("PT${it}") - } ?: Duration.ofMinutes(30)) // The tests binaries are big. + } ?: Duration.ofMinutes(5)) usesService(runGTestSemaphore) } diff --git a/kotlin-native/runtime/build.gradle.kts b/kotlin-native/runtime/build.gradle.kts index ca628f1b27d..0b69da69b55 100644 --- a/kotlin-native/runtime/build.gradle.kts +++ b/kotlin-native/runtime/build.gradle.kts @@ -55,6 +55,12 @@ bitcode { } } + testsGroup("main_test") { + testedModules.addAll("main") + // TODO(KT-53776): Some tests depend on allocator being legacy. + testSupportModules.addAll("mm", "noop_externalCallsChecker", "common_alloc", "legacy_alloc", "std_alloc", "common_gc", "noop_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("mimalloc") { sourceSets { main { @@ -163,6 +169,11 @@ bitcode { } } + testsGroup("common_alloc_test") { + testedModules.addAll("common_alloc") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "custom_alloc", "common_gc", "noop_gc_custom", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("std_alloc") { srcRoot.set(layout.projectDirectory.dir("src/alloc/std")) headersDirs.from(files("src/alloc/common/cpp", "src/alloc/legacy/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -183,6 +194,12 @@ bitcode { compilerArgs.add("-DCUSTOM_ALLOCATOR") } + testsGroup("custom_alloc_test") { + testedModules.addAll("custom_alloc") + // TODO(KT-53776): Some tests depend on GC not being noop. + testSupportModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "concurrent_ms_gc_custom", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("mimalloc_alloc") { srcRoot.set(layout.projectDirectory.dir("src/alloc/mimalloc")) headersDirs.from(files("src/mimalloc/c/include", "src/alloc/common/cpp", "src/alloc/legacy/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -203,6 +220,16 @@ bitcode { } } + testsGroup("mimalloc_legacy_alloc_test") { + testedModules.addAll("legacy_alloc") + testSupportModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "mimalloc_alloc", "common_gc", "noop_gc", "common_gcScheduler", "manual_gcScheduler", "objc", "mimalloc") + } + + testsGroup("std_legacy_alloc_test") { + testedModules.addAll("legacy_alloc") + testSupportModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "std_alloc", "common_gc", "noop_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("exceptionsSupport") { srcRoot.set(layout.projectDirectory.dir("src/exceptions_support")) headersDirs.from(files("src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -256,6 +283,11 @@ bitcode { } } + testsGroup("mm_test") { + testedModules.addAll("mm") + testSupportModules.addAll("main", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "noop_gc_custom", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("common_gc") { srcRoot.set(layout.projectDirectory.dir("src/gc/common")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -265,6 +297,11 @@ bitcode { } } + testsGroup("common_gc_test") { + testedModules.addAll("common_gc") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "noop_gc_custom", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("noop_gc") { srcRoot.set(layout.projectDirectory.dir("src/gc/noop")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp", "src/alloc/legacy/cpp")) @@ -292,6 +329,11 @@ bitcode { } } + testsGroup("stms_gc_test") { + testedModules.addAll("same_thread_ms_gc") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "common_alloc", "legacy_alloc", "std_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("same_thread_ms_gc_custom") { srcRoot.set(layout.projectDirectory.dir("src/gc/stms")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp", "src/alloc/custom/cpp")) @@ -303,6 +345,11 @@ bitcode { compilerArgs.add("-DCUSTOM_ALLOCATOR") } + testsGroup("stms_gc_custom_test") { + testedModules.addAll("same_thread_ms_gc_custom") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("pmcs_gc") { srcRoot.set(layout.projectDirectory.dir("src/gc/pmcs")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp", "src/alloc/legacy/cpp")) @@ -312,6 +359,11 @@ bitcode { } } + testsGroup("pmcs_gc_test") { + testedModules.addAll("pmcs_gc") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "common_alloc", "legacy_alloc", "std_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("pmcs_gc_custom") { srcRoot.set(layout.projectDirectory.dir("src/gc/pmcs")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp", "src/alloc/custom/cpp")) @@ -323,6 +375,11 @@ bitcode { compilerArgs.add("-DCUSTOM_ALLOCATOR") } + testsGroup("pmcs_gc_custom_test") { + testedModules.addAll("pmcs_gc_custom") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("concurrent_ms_gc") { srcRoot.set(layout.projectDirectory.dir("src/gc/cms")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp", "src/alloc/legacy/cpp")) @@ -332,6 +389,11 @@ bitcode { } } + testsGroup("cms_gc_test") { + testedModules.addAll("concurrent_ms_gc") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "common_alloc", "legacy_alloc", "std_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("concurrent_ms_gc_custom") { srcRoot.set(layout.projectDirectory.dir("src/gc/cms")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp", "src/alloc/custom/cpp")) @@ -343,6 +405,11 @@ bitcode { compilerArgs.add("-DCUSTOM_ALLOCATOR") } + testsGroup("cms_gc_custom_test") { + testedModules.addAll("concurrent_ms_gc_custom") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "objc") + } + module("common_gcScheduler") { srcRoot.set(layout.projectDirectory.dir("src/gcScheduler/common")) headersDirs.from(files("src/alloc/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -352,6 +419,11 @@ bitcode { } } + testsGroup("common_gcScheduler_test") { + testedModules.addAll("common_gcScheduler") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "noop_gc_custom", "manual_gcScheduler", "objc") + } + module("manual_gcScheduler") { srcRoot.set(layout.projectDirectory.dir("src/gcScheduler/manual")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -369,6 +441,11 @@ bitcode { } } + testsGroup("adaptive_gcScheduler_test") { + testedModules.addAll("adaptive_gcScheduler") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "noop_gc_custom", "common_gcScheduler", "objc") + } + module("aggressive_gcScheduler") { srcRoot.set(layout.projectDirectory.dir("src/gcScheduler/aggressive")) headersDirs.from(files("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp")) @@ -378,6 +455,11 @@ bitcode { } } + testsGroup("aggressive_gcScheduler_test") { + testedModules.addAll("aggressive_gcScheduler") + testSupportModules.addAll("main", "mm", "noop_externalCallsChecker", "common_alloc", "custom_alloc", "common_gc", "noop_gc_custom", "common_gcScheduler", "objc") + } + module("impl_externalCallsChecker") { srcRoot.set(layout.projectDirectory.dir("src/externalCallsChecker/impl")) headersDirs.from("src/alloc/common/cpp", "src/gcScheduler/common/cpp", "src/gc/common/cpp", "src/mm/cpp", "src/externalCallsChecker/common/cpp", "src/main/cpp") @@ -402,73 +484,6 @@ bitcode { } onlyIf { target.family.isAppleFamily } } - - testsGroup("custom_alloc_runtime_tests") { - testedModules.addAll("custom_alloc") - testSupportModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "concurrent_ms_gc_custom", "objc") - } - - testsGroup("experimentalMM_stms_mimalloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "same_thread_ms_gc", "mimalloc", "mimalloc_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_stms_std_alloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "same_thread_ms_gc", "std_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_stms_custom_alloc_runtime_tests") { - testedModules.addAll("mm", "same_thread_ms_gc_custom") - testSupportModules.addAll("main", "noop_externalCallsChecker", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "custom_alloc", "objc") - } - - testsGroup("experimentalMM_pmcs_mimalloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "pmcs_gc", "mimalloc", "mimalloc_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_pmcs_std_alloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "pmcs_gc", "std_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_pmcs_custom_alloc_runtime_tests") { - testedModules.addAll("mm", "pmcs_gc_custom") - testSupportModules.addAll("main", "noop_externalCallsChecker", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "custom_alloc", "objc") - } - - testsGroup("experimentalMM_cms_mimalloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "concurrent_ms_gc", "mimalloc", "mimalloc_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_cms_std_alloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "concurrent_ms_gc", "std_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_cms_custom_alloc_runtime_tests") { - testedModules.addAll("mm", "concurrent_ms_gc_custom") - testSupportModules.addAll("main", "noop_externalCallsChecker", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "custom_alloc", "objc") - } - - testsGroup("experimentalMM_noop_mimalloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "noop_gc", "mimalloc", "mimalloc_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_noop_std_alloc_runtime_tests") { - testedModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "noop_gc", "std_alloc", "legacy_alloc", "objc") - } - - testsGroup("experimentalMM_noop_custom_alloc_runtime_tests") { - testedModules.addAll("mm", "noop_gc_custom") - testSupportModules.addAll("main", "noop_externalCallsChecker", "common_alloc", "common_gc", "common_gcScheduler", "manual_gcScheduler", "custom_alloc", "objc") - } - - testsGroup("aggressive_gcScheduler_runtime_tests") { - testedModules.addAll("aggressive_gcScheduler") - testSupportModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "noop_gc", "std_alloc", "legacy_alloc", "objc") - } - - testsGroup("adaptive_gcScheduler_runtime_tests") { - testedModules.addAll("adaptive_gcScheduler") - testSupportModules.addAll("main", "noop_externalCallsChecker", "mm", "common_alloc", "common_gc", "common_gcScheduler", "noop_gc", "std_alloc", "legacy_alloc", "objc") - } } }