Make it possible to run DiagnosisCompilerTestDataSpecTestGenerated from fir-low-level-api in IJ infra

This commit is contained in:
Nikita Bobko
2021-06-07 16:51:28 +02:00
committed by teamcityserver
parent 294ec3905b
commit 3aebd0315f
3 changed files with 7 additions and 4 deletions
@@ -19,14 +19,15 @@ import org.jetbrains.kotlin.test.runners.AbstractFirDiagnosticTestSpec
import java.io.File
import java.nio.file.Files
fun detectDirsWithTestsMapFileOnly(dirName: String): List<String> {
// `baseDir` is used in Kotlin plugin from IJ infra
fun detectDirsWithTestsMapFileOnly(dirName: String, baseDir: String = "."): List<String> {
val excludedDirs = mutableListOf<String>()
File("$SPEC_TESTDATA_PATH/$dirName").walkTopDown().forEach { file ->
File("${baseDir}/$SPEC_TESTDATA_PATH/$dirName").walkTopDown().forEach { file ->
val listFiles = Files.walk(file.toPath()).filter(Files::isRegularFile)
if (file.isDirectory && listFiles?.allMatch { it.endsWith(TESTS_MAP_FILENAME) } == true) {
val relativePath = file.relativeTo(File("$SPEC_TESTDATA_PATH/$dirName")).path
val relativePath = file.relativeTo(File("${baseDir}/$SPEC_TESTDATA_PATH/$dirName")).path
if (!excludedDirs.any { relativePath.startsWith(it) }) {
excludedDirs.add(relativePath)