diff --git a/.idea/artifacts/KotlinPlugin.xml b/.idea/artifacts/KotlinPlugin.xml index 9d9f0fe34ac..351c60e12d4 100644 --- a/.idea/artifacts/KotlinPlugin.xml +++ b/.idea/artifacts/KotlinPlugin.xml @@ -16,6 +16,7 @@ + diff --git a/.idea/modules.xml b/.idea/modules.xml index 593516f76ef..80d186d81dd 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -31,6 +31,7 @@ + diff --git a/build.xml b/build.xml index 5ded5430511..2bce5d60314 100644 --- a/build.xml +++ b/build.xml @@ -77,6 +77,7 @@ + @@ -98,6 +99,7 @@ + @@ -161,6 +163,7 @@ + diff --git a/generators/src/org/jetbrains/jet/generators/injectors/GenerateInjectors.kt b/generators/src/org/jetbrains/jet/generators/injectors/GenerateInjectors.kt index e6fbeac9267..e01cf9da0b1 100644 --- a/generators/src/org/jetbrains/jet/generators/injectors/GenerateInjectors.kt +++ b/generators/src/org/jetbrains/jet/generators/injectors/GenerateInjectors.kt @@ -83,7 +83,7 @@ private fun generatorForTopDownAnalyzerBasic() = } private fun generatorForTopDownAnalyzerForJs() = - generator("js/js.translator/src", "org.jetbrains.jet.di", "InjectorForTopDownAnalyzerForJs") { + generator("js/js.frontend/src", "org.jetbrains.jet.di", "InjectorForTopDownAnalyzerForJs") { commonForTopDownAnalyzer() } diff --git a/js/js.frontend/js.frontend.iml b/js/js.frontend/js.frontend.iml new file mode 100644 index 00000000000..1a044eec4b2 --- /dev/null +++ b/js/js.frontend/js.frontend.iml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/js/js.translator/src/org/jetbrains/jet/di/InjectorForTopDownAnalyzerForJs.java b/js/js.frontend/src/org/jetbrains/jet/di/InjectorForTopDownAnalyzerForJs.java similarity index 100% rename from js/js.translator/src/org/jetbrains/jet/di/InjectorForTopDownAnalyzerForJs.java rename to js/js.frontend/src/org/jetbrains/jet/di/InjectorForTopDownAnalyzerForJs.java diff --git a/js/js.translator/src/org/jetbrains/k2js/analyze/AnalyzerFacadeForJS.java b/js/js.frontend/src/org/jetbrains/k2js/analyze/AnalyzerFacadeForJS.java similarity index 100% rename from js/js.translator/src/org/jetbrains/k2js/analyze/AnalyzerFacadeForJS.java rename to js/js.frontend/src/org/jetbrains/k2js/analyze/AnalyzerFacadeForJS.java diff --git a/js/js.translator/src/org/jetbrains/k2js/config/Config.java b/js/js.frontend/src/org/jetbrains/k2js/config/Config.java similarity index 96% rename from js/js.translator/src/org/jetbrains/k2js/config/Config.java rename to js/js.frontend/src/org/jetbrains/k2js/config/Config.java index 6eb88d115a2..a3fc8df4948 100644 --- a/js/js.translator/src/org/jetbrains/k2js/config/Config.java +++ b/js/js.frontend/src/org/jetbrains/k2js/config/Config.java @@ -23,8 +23,6 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.ModuleDescriptor; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.BindingContext; -import org.jetbrains.k2js.translate.test.JSTester; -import org.jetbrains.k2js.translate.test.QUnitTester; import java.util.Arrays; import java.util.Collection; @@ -222,9 +220,7 @@ public abstract class Config { return allFiles; } - //TODO: should be null by default I suppose but we can't communicate it to K2JSCompiler atm - @Nullable - public JSTester getTester() { - return new QUnitTester(); + public boolean isTestConfig() { + return false; } } diff --git a/js/js.translator/src/org/jetbrains/k2js/config/EcmaVersion.java b/js/js.frontend/src/org/jetbrains/k2js/config/EcmaVersion.java similarity index 100% rename from js/js.translator/src/org/jetbrains/k2js/config/EcmaVersion.java rename to js/js.frontend/src/org/jetbrains/k2js/config/EcmaVersion.java diff --git a/js/js.translator/src/org/jetbrains/k2js/config/LibrarySourcesConfig.java b/js/js.frontend/src/org/jetbrains/k2js/config/LibrarySourcesConfig.java similarity index 100% rename from js/js.translator/src/org/jetbrains/k2js/config/LibrarySourcesConfig.java rename to js/js.frontend/src/org/jetbrains/k2js/config/LibrarySourcesConfig.java diff --git a/js/js.tests/test/org/jetbrains/k2js/test/config/TestConfigWithUnitTests.java b/js/js.tests/test/org/jetbrains/k2js/test/config/TestConfigWithUnitTests.java index a25105a2e76..498c6a1c399 100644 --- a/js/js.tests/test/org/jetbrains/k2js/test/config/TestConfigWithUnitTests.java +++ b/js/js.tests/test/org/jetbrains/k2js/test/config/TestConfigWithUnitTests.java @@ -22,8 +22,6 @@ import org.jetbrains.jet.lang.descriptors.ModuleDescriptor; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.k2js.config.EcmaVersion; -import org.jetbrains.k2js.translate.test.JSRhinoUnitTester; -import org.jetbrains.k2js.translate.test.JSTester; import java.util.List; @@ -41,10 +39,6 @@ public class TestConfigWithUnitTests extends TestConfig { } }; - @Override - public JSTester getTester() { - return new JSRhinoUnitTester(); - } public TestConfigWithUnitTests(@NotNull Project project, @NotNull EcmaVersion version, @@ -53,4 +47,9 @@ public class TestConfigWithUnitTests extends TestConfig { @NotNull ModuleDescriptor module) { super(project, version, files, libraryContext, module, false); } + + @Override + public boolean isTestConfig() { + return true; + } } diff --git a/js/js.translator/js.translator.iml b/js/js.translator/js.translator.iml index 5aa8da5b1b7..41539d5b6e0 100644 --- a/js/js.translator/js.translator.iml +++ b/js/js.translator/js.translator.iml @@ -12,6 +12,7 @@ + diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/general/Translation.java b/js/js.translator/src/org/jetbrains/k2js/translate/general/Translation.java index 8a98949a925..7fd2e1431f5 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/general/Translation.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/general/Translation.java @@ -42,8 +42,10 @@ import org.jetbrains.k2js.translate.declaration.PackageDeclarationTranslator; import org.jetbrains.k2js.translate.expression.ExpressionVisitor; import org.jetbrains.k2js.translate.expression.FunctionTranslator; import org.jetbrains.k2js.translate.expression.PatternTranslator; +import org.jetbrains.k2js.translate.test.JSRhinoUnitTester; import org.jetbrains.k2js.translate.test.JSTestGenerator; import org.jetbrains.k2js.translate.test.JSTester; +import org.jetbrains.k2js.translate.test.QUnitTester; import org.jetbrains.k2js.translate.utils.JsAstUtils; import org.jetbrains.k2js.translate.utils.dangerous.DangerousData; import org.jetbrains.k2js.translate.utils.dangerous.DangerousTranslator; @@ -162,12 +164,10 @@ public final class Translation { private static void mayBeGenerateTests(@NotNull Collection files, @NotNull Config config, @NotNull JsBlock rootBlock, @NotNull TranslationContext context) { - JSTester tester = config.getTester(); - if (tester != null) { - tester.initialize(context, rootBlock); - JSTestGenerator.generateTestCalls(context, files, tester); - tester.deinitialize(); - } + JSTester tester = config.isTestConfig() ? new JSRhinoUnitTester() : new QUnitTester(); + tester.initialize(context, rootBlock); + JSTestGenerator.generateTestCalls(context, files, tester); + tester.deinitialize(); } //TODO: determine whether should throw exception