Add possibility to use baseDir in SpecHelpersSourceFilesProvider
In IJ infrastructure we have specific path prefix for compiler testData
This commit is contained in:
committed by
TeamCityServer
parent
2c8d583d8b
commit
d781902626
+3
-2
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.test.runners
|
||||
|
||||
import org.jetbrains.kotlin.test.bind
|
||||
import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder
|
||||
import org.jetbrains.kotlin.test.directives.AdditionalFilesDirectives.SPEC_HELPERS
|
||||
import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.WITH_STDLIB
|
||||
@@ -22,13 +23,13 @@ abstract class AbstractFirDiagnosticTestSpec : AbstractFirDiagnosticTest() {
|
||||
}
|
||||
}
|
||||
|
||||
fun TestConfigurationBuilder.baseFirSpecDiagnosticTestConfiguration() {
|
||||
fun TestConfigurationBuilder.baseFirSpecDiagnosticTestConfiguration(baseDir: String = ".") {
|
||||
defaultDirectives {
|
||||
+SPEC_HELPERS
|
||||
+WITH_STDLIB
|
||||
}
|
||||
|
||||
useAdditionalSourceProviders(::SpecHelpersSourceFilesProvider)
|
||||
useAdditionalSourceProviders(::SpecHelpersSourceFilesProvider.bind(baseDir))
|
||||
|
||||
useAfterAnalysisCheckers(
|
||||
::FirIdenticalChecker,
|
||||
|
||||
+3
-5
@@ -15,17 +15,15 @@ import org.jetbrains.kotlin.test.services.AdditionalSourceProvider
|
||||
import org.jetbrains.kotlin.test.services.TestServices
|
||||
import java.io.File
|
||||
|
||||
class SpecHelpersSourceFilesProvider(testServices: TestServices) : AdditionalSourceProvider(testServices) {
|
||||
companion object {
|
||||
const val HELPERS_DIR_PATH = "compiler/tests-spec/testData/diagnostics/helpers"
|
||||
}
|
||||
class SpecHelpersSourceFilesProvider(testServices: TestServices, baseDir: String) : AdditionalSourceProvider(testServices) {
|
||||
private val helpersDirPath = "$baseDir/compiler/tests-spec/testData/diagnostics/helpers"
|
||||
|
||||
override val directives: List<DirectivesContainer> =
|
||||
listOf(AdditionalFilesDirectives)
|
||||
|
||||
override fun produceAdditionalFiles(globalDirectives: RegisteredDirectives, module: TestModule): List<TestFile> {
|
||||
if (SPEC_HELPERS !in module.directives) return emptyList()
|
||||
return File(HELPERS_DIR_PATH).walkTopDown().mapNotNull {
|
||||
return File(helpersDirPath).walkTopDown().mapNotNull {
|
||||
if (it.isDirectory) return@mapNotNull null
|
||||
it.toTestFile()
|
||||
}.toList()
|
||||
|
||||
Reference in New Issue
Block a user