From 28c473074c02f3bc1f92cd36a789c809e563d669 Mon Sep 17 00:00:00 2001 From: pyos Date: Tue, 10 Aug 2021 12:36:15 +0200 Subject: [PATCH] Permit overriding the FIR test in FirTestDataConsistencyHandler --- .../classic/handlers/FirTestDataConsistencyHandler.kt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/classic/handlers/FirTestDataConsistencyHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/classic/handlers/FirTestDataConsistencyHandler.kt index c1edfd460d9..c483b9baf5a 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/classic/handlers/FirTestDataConsistencyHandler.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/classic/handlers/FirTestDataConsistencyHandler.kt @@ -5,7 +5,6 @@ package org.jetbrains.kotlin.test.frontend.classic.handlers -import org.jetbrains.kotlin.codeMetaInfo.clearTextFromDiagnosticMarkup import org.jetbrains.kotlin.test.WrappedException import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives import org.jetbrains.kotlin.test.directives.model.DirectivesContainer @@ -13,11 +12,12 @@ import org.jetbrains.kotlin.test.directives.model.RegisteredDirectives import org.jetbrains.kotlin.test.model.AfterAnalysisChecker import org.jetbrains.kotlin.test.model.TestFile import org.jetbrains.kotlin.test.runners.AbstractFirDiagnosticTest +import org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerTest import org.jetbrains.kotlin.test.services.* import org.jetbrains.kotlin.test.utils.firTestDataFile import java.io.File -class FirTestDataConsistencyHandler(testServices: TestServices) : AfterAnalysisChecker(testServices) { +open class FirTestDataConsistencyHandler(testServices: TestServices) : AfterAnalysisChecker(testServices) { override val directiveContainers: List get() = listOf(FirDiagnosticsDirectives) @@ -51,9 +51,12 @@ class FirTestDataConsistencyHandler(testServices: TestServices) : AfterAnalysisC } private fun runFirTestAndGeneratedTestData(testData: File, firTestData: File) { - firTestData.writeText(clearTextFromDiagnosticMarkup(testData.readText())) - val test = object : AbstractFirDiagnosticTest() {} + firTestData.writeText(testData.preprocessSource()) + val test = correspondingFirTest() test.initTestInfo(testServices.testInfo.copy(className = "${testServices.testInfo.className}_fir_anonymous")) test.runTest(firTestData.absolutePath) } + + protected open fun correspondingFirTest(): AbstractKotlinCompilerTest = + object : AbstractFirDiagnosticTest() {} }