[JS IC TEST] Support deleted files list in module step
This commit is contained in:
@@ -17,13 +17,15 @@ class ModuleInfo(val moduleName: String) {
|
||||
|
||||
sealed class Modification {
|
||||
class Delete(private val fileName: String) : Modification() {
|
||||
override fun execute(testDirectory: File, sourceDirectory: File) {
|
||||
File(sourceDirectory, fileName).delete()
|
||||
override fun execute(testDirectory: File, sourceDirectory: File, deletedFilesCollector: (File) -> Unit) {
|
||||
val file = File(sourceDirectory, fileName)
|
||||
file.delete()
|
||||
deletedFilesCollector(file)
|
||||
}
|
||||
}
|
||||
|
||||
class Update(private val fromFile: String, private val toFile: String) : Modification() {
|
||||
override fun execute(testDirectory: File, sourceDirectory: File) {
|
||||
override fun execute(testDirectory: File, sourceDirectory: File, deletedFilesCollector: (File) -> Unit) {
|
||||
val toFile = File(sourceDirectory, toFile)
|
||||
if (toFile.exists()) {
|
||||
toFile.delete()
|
||||
@@ -35,7 +37,7 @@ class ModuleInfo(val moduleName: String) {
|
||||
}
|
||||
}
|
||||
|
||||
abstract fun execute(testDirectory: File, sourceDirectory: File)
|
||||
abstract fun execute(testDirectory: File, sourceDirectory: File, deletedFilesCollector: (File) -> Unit = {})
|
||||
}
|
||||
|
||||
class ModuleStep(
|
||||
@@ -46,8 +48,6 @@ class ModuleInfo(val moduleName: String) {
|
||||
val directives: Set<StepDirectives>
|
||||
)
|
||||
|
||||
|
||||
|
||||
val steps = mutableListOf<ModuleStep>()
|
||||
}
|
||||
|
||||
|
||||
@@ -129,8 +129,9 @@ abstract class AbstractInvalidationTest : KotlinTestWithEnvironment() {
|
||||
val moduleSourceDir = File(sourceDir, module)
|
||||
val moduleInfo = moduleInfos[module] ?: error("No module info found for $module")
|
||||
val moduleStep = moduleInfo.steps[projStep.id]
|
||||
val deletedFiles = mutableListOf<File>()
|
||||
for (modification in moduleStep.modifications) {
|
||||
modification.execute(moduleTestDir, moduleSourceDir)
|
||||
modification.execute(moduleTestDir, moduleSourceDir) { deletedFiles.add(it) }
|
||||
}
|
||||
|
||||
val dependencies = moduleStep.dependencies.map { resolveModuleArtifact(it, buildDir) }
|
||||
|
||||
Reference in New Issue
Block a user