From 115798f58468ead9f696e101d1be0565741d8cf4 Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Wed, 20 May 2015 15:46:03 +0300 Subject: [PATCH] JS test: check directives in MultipleModulesTranslationTest --- ...stractSingleFileTranslationWithDirectivesTest.java | 10 ---------- .../test/org/jetbrains/kotlin/js/test/BasicTest.java | 11 +++++++++-- .../kotlin/js/test/MultipleModulesTranslationTest.kt | 5 ++++- .../kotlin/js/test/semantics/InlineMultiFileTest.java | 11 ----------- 4 files changed, 13 insertions(+), 24 deletions(-) diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/AbstractSingleFileTranslationWithDirectivesTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/AbstractSingleFileTranslationWithDirectivesTest.java index 7f7e78650ca..55552f2a06f 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/AbstractSingleFileTranslationWithDirectivesTest.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/AbstractSingleFileTranslationWithDirectivesTest.java @@ -16,10 +16,7 @@ package org.jetbrains.kotlin.js.test; -import com.google.dart.compiler.backend.js.ast.JsProgram; import org.jetbrains.annotations.NotNull; -import org.jetbrains.kotlin.js.test.utils.DirectiveTestUtils; -import org.jetbrains.kotlin.js.test.utils.JsTestUtils; public abstract class AbstractSingleFileTranslationWithDirectivesTest extends SingleFileTranslationTest { public AbstractSingleFileTranslationWithDirectivesTest(@NotNull String main) { @@ -30,11 +27,4 @@ public abstract class AbstractSingleFileTranslationWithDirectivesTest extends Si public void setUp() throws Exception { super.setUp(); } - - @Override - protected void processJsProgram(@NotNull JsProgram program) throws Exception { - String fileName = getInputFilePath(getTestName(true) + ".kt"); - String fileText = JsTestUtils.readFile(fileName); - DirectiveTestUtils.processDirectives(program, fileText); - } } diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicTest.java index bd4367c7f27..c3a1ecfce96 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicTest.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicTest.java @@ -42,6 +42,7 @@ import org.jetbrains.kotlin.js.facade.K2JSTranslator; import org.jetbrains.kotlin.js.facade.MainCallParameters; import org.jetbrains.kotlin.js.facade.TranslationResult; import org.jetbrains.kotlin.js.test.rhino.RhinoResultChecker; +import org.jetbrains.kotlin.js.test.utils.DirectiveTestUtils; import org.jetbrains.kotlin.js.test.utils.JsTestUtils; import org.jetbrains.kotlin.js.translate.context.Namer; import org.jetbrains.kotlin.psi.JetFile; @@ -195,12 +196,13 @@ public abstract class BasicTest extends KotlinTestWithEnvironment { if (!(translationResult instanceof TranslationResult.Success)) return; TranslationResult.Success successResult = (TranslationResult.Success) translationResult; - processJsProgram(successResult.getProgram()); OutputFileCollection outputFiles = successResult.getOutputFiles(outputFile, getOutputPrefixFile(), getOutputPostfixFile()); File outputDir = outputFile.getParentFile(); assert outputDir != null : "Parent file for output file should not be null, outputFilePath: " + outputFile.getPath(); OutputUtilsPackage.writeAllTo(outputFiles, outputDir); + + processJsProgram(successResult.getProgram(), jetFiles); } protected File getOutputPostfixFile() { @@ -223,7 +225,12 @@ public abstract class BasicTest extends KotlinTestWithEnvironment { return false; } - protected void processJsProgram(@NotNull JsProgram program) throws Exception { } + protected void processJsProgram(@NotNull JsProgram program, @NotNull List jetFiles) throws Exception { + for (JetFile file : jetFiles) { + String text = file.getText(); + DirectiveTestUtils.processDirectives(program, text); + } + } protected void runRhinoTests( @NotNull String testName, diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/MultipleModulesTranslationTest.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/MultipleModulesTranslationTest.kt index c4ee0973f39..c6996c841bc 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/MultipleModulesTranslationTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/MultipleModulesTranslationTest.kt @@ -16,9 +16,12 @@ package org.jetbrains.kotlin.js.test +import com.google.dart.compiler.backend.js.ast.JsProgram import org.jetbrains.kotlin.js.config.EcmaVersion import org.jetbrains.kotlin.js.facade.MainCallParameters import org.jetbrains.kotlin.js.test.rhino.RhinoFunctionResultChecker +import org.jetbrains.kotlin.js.test.utils.DirectiveTestUtils +import org.jetbrains.kotlin.js.test.utils.JsTestUtils import org.jetbrains.kotlin.js.test.utils.JsTestUtils.getAllFilesInDir import org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils import java.io.File @@ -61,7 +64,7 @@ public abstract class MultipleModulesTranslationTest(main: String) : BasicTest(m generateJavaScriptFiles(fullFilePaths, moduleDirectoryName, MainCallParameters.noCall(), version, moduleName, libraries) } } - + private fun getMetaFileOutputPath(moduleDirectoryName: String, version: EcmaVersion) = KotlinJavascriptMetadataUtils.replaceSuffix(getOutputFilePath(moduleDirectoryName, version)) diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/InlineMultiFileTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/InlineMultiFileTest.java index ffa0d1c0e82..f471e7ea872 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/InlineMultiFileTest.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/InlineMultiFileTest.java @@ -147,15 +147,4 @@ public final class InlineMultiFileTest extends MultipleFilesTranslationTest { public void testSimpleCapturingInPackage() throws Exception { checkFooBoxIsOk(); } - - @Override - protected void processJsProgram(@NotNull JsProgram program) throws Exception { - String dir = getTestName(true); - List fileNames = getAllFilesInDir(getInputFilePath(dir)); - - for (String fileName : fileNames) { - String fileText = JsTestUtils.readFile(fileName); - DirectiveTestUtils.processDirectives(program, fileText); - } - } }