From 949186b62957b0507204c96fc596c80ba04d13f3 Mon Sep 17 00:00:00 2001 From: Alexander Korepanov Date: Thu, 13 Apr 2023 21:07:27 +0200 Subject: [PATCH] [JS IR Tests] Prevent implicit deletion of irdump files --- .../kotlin/js/test/converters/JsIrBackendFacade.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/converters/JsIrBackendFacade.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/converters/JsIrBackendFacade.kt index b343a174211..34e1203d81f 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/converters/JsIrBackendFacade.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/converters/JsIrBackendFacade.kt @@ -272,7 +272,10 @@ class JsIrBackendFacade( } private fun CompilationOutputs.writeTo(outputFile: File, moduleId: String, moduleKind: ModuleKind) { - val allJsFiles = writeAll(outputFile.parentFile, outputFile.nameWithoutExtension, false, moduleId, moduleKind).filter { + val tmpBuildDir = outputFile.parentFile.resolve("tmp-build") + // CompilationOutputs keeps the `outputDir` clean by removing all outdated JS and other unknown files. + // To ensure that useful files around `outputFile`, such as irdump, are not removed, use `tmpBuildDir` instead. + val allJsFiles = writeAll(tmpBuildDir, outputFile.nameWithoutExtension, false, moduleId, moduleKind).filter { it.extension == "js" || it.extension == "mjs" } @@ -283,6 +286,7 @@ class JsIrBackendFacade( val newFile = outputFile.augmentWithModuleName(depModuleId) builtJsFilePath.fixJsFile(newFile, depModuleId, moduleKind) } + tmpBuildDir.deleteRecursively() } private fun File.write(text: String) {