Rename createTempDirectory to getOrCreateTempDirectory
With cache this function can be used to get already created directory by name.
This commit is contained in:
committed by
TeamCityServer
parent
88aa71b0aa
commit
c176d4d7b0
+3
-3
@@ -28,9 +28,9 @@ abstract class SourceFileProvider : TestService {
|
||||
val TestServices.sourceFileProvider: SourceFileProvider by TestServices.testServiceAccessor()
|
||||
|
||||
class SourceFileProviderImpl(val testServices: TestServices, val preprocessors: List<SourceFilePreprocessor>) : SourceFileProvider() {
|
||||
override val kotlinSourceDirectory: File = testServices.createTempDirectory("kotlin-files")
|
||||
override val javaSourceDirectory: File = testServices.createTempDirectory("java-files")
|
||||
override val javaBinaryDirectory: File = testServices.createTempDirectory("java-binary-files")
|
||||
override val kotlinSourceDirectory: File = testServices.getOrCreateTempDirectory("kotlin-files")
|
||||
override val javaSourceDirectory: File = testServices.getOrCreateTempDirectory("java-files")
|
||||
override val javaBinaryDirectory: File = testServices.getOrCreateTempDirectory("java-binary-files")
|
||||
|
||||
private val contentOfFiles = mutableMapOf<TestFile, String>()
|
||||
private val realFileMap = mutableMapOf<TestFile, File>()
|
||||
|
||||
+3
-3
@@ -8,12 +8,12 @@ package org.jetbrains.kotlin.test.services
|
||||
import java.io.File
|
||||
|
||||
abstract class TemporaryDirectoryManager(protected val testServices: TestServices) : TestService {
|
||||
abstract fun createTempDirectory(name: String): File
|
||||
abstract fun getOrCreateTempDirectory(name: String): File
|
||||
abstract fun cleanupTemporaryDirectories()
|
||||
}
|
||||
|
||||
val TestServices.temporaryDirectoryManager: TemporaryDirectoryManager by TestServices.testServiceAccessor()
|
||||
|
||||
fun TestServices.createTempDirectory(name: String): File {
|
||||
return temporaryDirectoryManager.createTempDirectory(name)
|
||||
fun TestServices.getOrCreateTempDirectory(name: String): File {
|
||||
return temporaryDirectoryManager.getOrCreateTempDirectory(name)
|
||||
}
|
||||
|
||||
+3
-3
@@ -9,12 +9,12 @@ import org.jetbrains.kotlin.test.directives.CodegenTestDirectives
|
||||
import org.jetbrains.kotlin.test.model.BinaryArtifacts
|
||||
import org.jetbrains.kotlin.test.model.TestModule
|
||||
import org.jetbrains.kotlin.test.services.TestServices
|
||||
import org.jetbrains.kotlin.test.services.createTempDirectory
|
||||
import org.jetbrains.kotlin.test.services.getOrCreateTempDirectory
|
||||
|
||||
class PhasedIrDumpHandler(testServices: TestServices) : JvmBinaryArtifactHandler(testServices) {
|
||||
override fun processModule(module: TestModule, info: BinaryArtifacts.Jvm) {
|
||||
if (CodegenTestDirectives.DUMP_IR_FOR_GIVEN_PHASES !in module.directives) return
|
||||
val dumpDirectory = testServices.createTempDirectory(DUMPED_IR_FOLDER_NAME)
|
||||
val dumpDirectory = testServices.getOrCreateTempDirectory(DUMPED_IR_FOLDER_NAME)
|
||||
val dumpFiles = dumpDirectory.resolve(module.name).listFiles() ?: return
|
||||
val testFile = module.files.first()
|
||||
val testDirectory = testFile.originalFile.parentFile
|
||||
@@ -39,4 +39,4 @@ class PhasedIrDumpHandler(testServices: TestServices) : JvmBinaryArtifactHandler
|
||||
companion object {
|
||||
const val DUMPED_IR_FOLDER_NAME = "dumped_ir"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-3
@@ -7,7 +7,6 @@ package org.jetbrains.kotlin.test.services.configuration
|
||||
|
||||
import com.intellij.openapi.util.SystemInfo
|
||||
import com.intellij.psi.PsiJavaModule.MODULE_INFO_FILE
|
||||
import org.jetbrains.kotlin.backend.common.phaser.AnyNamedPhase
|
||||
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
|
||||
import org.jetbrains.kotlin.backend.jvm.jvmPhases
|
||||
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
|
||||
@@ -49,7 +48,6 @@ import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives.NO_UNIFIE
|
||||
import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives.PARAMETERS_METADATA
|
||||
import org.jetbrains.kotlin.test.directives.model.DirectivesContainer
|
||||
import org.jetbrains.kotlin.test.directives.model.RegisteredDirectives
|
||||
import org.jetbrains.kotlin.test.directives.model.ValueDirective
|
||||
import org.jetbrains.kotlin.test.model.DependencyDescription
|
||||
import org.jetbrains.kotlin.test.model.DependencyKind
|
||||
import org.jetbrains.kotlin.test.model.TestFile
|
||||
@@ -359,7 +357,7 @@ class JvmEnvironmentConfigurator(testServices: TestServices) : EnvironmentConfig
|
||||
}
|
||||
|
||||
private fun CompilerConfiguration.putCustomPhaseConfigWithEnabledDump(module: TestModule) {
|
||||
val dumpDirectory = testServices.createTempDirectory(PhasedIrDumpHandler.DUMPED_IR_FOLDER_NAME)
|
||||
val dumpDirectory = testServices.getOrCreateTempDirectory(PhasedIrDumpHandler.DUMPED_IR_FOLDER_NAME)
|
||||
val phases = module.directives[CodegenTestDirectives.DUMP_IR_FOR_GIVEN_PHASES].toSet()
|
||||
if (phases.isNotEmpty()) {
|
||||
val phaseConfig = PhaseConfig(
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ class TemporaryDirectoryManagerImpl(testServices: TestServices) : TemporaryDirec
|
||||
KtTestUtil.tmpDirForTest(testInfo.className, testInfo.methodName)
|
||||
}
|
||||
|
||||
override fun createTempDirectory(name: String): File {
|
||||
override fun getOrCreateTempDirectory(name: String): File {
|
||||
return cache.getOrPut(name) { KtTestUtil.tmpDir(rootTempDir, name) }
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -20,7 +20,7 @@ class CompiledClassesManager(val testServices: TestServices) : TestService {
|
||||
|
||||
fun getCompiledKotlinDirForModule(module: TestModule, classFileFactory: ClassFileFactory? = null): File {
|
||||
return compiledKotlinCache.getOrPut(module) {
|
||||
val outputDir = testServices.createTempDirectory("module_${module.name}_kotlin-classes")
|
||||
val outputDir = testServices.getOrCreateTempDirectory("module_${module.name}_kotlin-classes")
|
||||
|
||||
@Suppress("NAME_SHADOWING")
|
||||
val classFileFactory = classFileFactory
|
||||
@@ -39,7 +39,7 @@ class CompiledClassesManager(val testServices: TestServices) : TestService {
|
||||
|
||||
fun getOrCreateCompiledJavaDirForModule(module: TestModule): File {
|
||||
return compiledJavaCache.getOrPut(module) {
|
||||
testServices.createTempDirectory("module_${module.name}_java-classes")
|
||||
testServices.getOrCreateTempDirectory("module_${module.name}_java-classes")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user