Make tools/binary-compatibility-validator tests muteable

KTI-2100 Identify all non-muteable tests
diff --git a/libraries/tools/binary-compatibility-validator/build.gradle.kts b/libraries/tools/binary-compatibility-validator/build.gradle.kts
index 0aca34d..15e7f74 100644
--- a/libraries/tools/binary-compatibility-validator/build.gradle.kts
+++ b/libraries/tools/binary-compatibility-validator/build.gradle.kts
@@ -14,6 +14,7 @@
     }
 
     testApi(kotlinTest("junit"))
+    testImplementation(project(":compiler:tests-mutes:mutes-junit4"))
 
     testArtifacts(project(":kotlin-stdlib"))
     testArtifacts(project(":kotlin-stdlib-jdk7"))
@@ -36,6 +37,7 @@
         dependsOn(":kotlin-native:runtime:nativeStdlib")
     }
 
+    muteWithDatabase()
     systemProperty("native.enabled", kotlinBuildProperties.isKotlinNativeEnabled)
     systemProperty("overwrite.output", project.providers.gradleProperty("overwrite.output").orNull ?: System.getProperty("overwrite.output", "false"))
     systemProperty("kotlinVersion", project.version)
diff --git a/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/CasesPublicAPITest.kt b/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/CasesPublicAPITest.kt
index 10d7730..5d08dd7 100644
--- a/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/CasesPublicAPITest.kt
+++ b/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/CasesPublicAPITest.kt
@@ -6,6 +6,7 @@
 package org.jetbrains.kotlin.tools.tests
 
 import kotlinx.validation.api.*
+import org.jetbrains.kotlin.test.MuteableTestRule
 import org.junit.*
 import org.junit.rules.TestName
 import java.io.File
@@ -23,6 +24,7 @@
 
     @[Rule JvmField]
     val testName = TestName()
+    @get:Rule val muteableTestRule = MuteableTestRule()
 
     @Test fun companions() { snapshotAPIAndCompare(testName.methodName) }
 
diff --git a/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/KlibPublicAPITest.kt b/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/KlibPublicAPITest.kt
index e83775e..1508189 100644
--- a/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/KlibPublicAPITest.kt
+++ b/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/KlibPublicAPITest.kt
@@ -9,7 +9,9 @@
 
 import kotlinx.validation.ExperimentalBCVApi
 import kotlinx.validation.api.klib.*
+import org.jetbrains.kotlin.test.MuteableTestRule
 import org.junit.Assume
+import org.junit.Rule
 import java.io.File
 import kotlin.io.path.*
 import kotlin.test.Test
@@ -17,6 +19,7 @@
 import kotlin.test.fail
 
 class KlibPublicAPITest {
+    @get:Rule val muteableTestRule = MuteableTestRule()
 
     @Test
     fun jsWasmJsWasmWasiStdlib() {
diff --git a/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/RuntimePublicAPITest.kt b/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/RuntimePublicAPITest.kt
index 5168d8c..f1a4f3a 100644
--- a/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/RuntimePublicAPITest.kt
+++ b/libraries/tools/binary-compatibility-validator/src/test/kotlin/org.jetbrains.kotlin.tools.tests/RuntimePublicAPITest.kt
@@ -8,6 +8,7 @@
 import kotlinx.validation.api.filterOutAnnotated
 import kotlinx.validation.api.filterOutNonPublic
 import kotlinx.validation.api.loadApiFromJvmClasses
+import org.jetbrains.kotlin.test.MuteableTestRule
 import org.junit.Rule
 import org.junit.Test
 import org.junit.rules.TestName
@@ -18,6 +19,7 @@
 
     @[Rule JvmField]
     val testName = TestName()
+    @get:Rule val muteableTestRule = MuteableTestRule()
 
     @Test fun kotlinStdlibRuntimeMerged() {
         snapshotAPIAndCompare("../../stdlib/build/libs", "kotlin-stdlib", listOf("kotlin.jvm.internal"))