diff --git a/idea/idea-completion/idea-completion.iml b/idea/idea-completion/idea-completion.iml
index ff92562197a..d3158c4c2da 100644
--- a/idea/idea-completion/idea-completion.iml
+++ b/idea/idea-completion/idea-completion.iml
@@ -22,7 +22,6 @@
-
diff --git a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractJSBasicCompletionTest.java b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractJSBasicCompletionTest.java
index 4f796e1a207..97d51e04efc 100644
--- a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractJSBasicCompletionTest.java
+++ b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractJSBasicCompletionTest.java
@@ -27,7 +27,7 @@ public abstract class AbstractJSBasicCompletionTest extends KotlinFixtureComplet
@NotNull
@Override
protected LightProjectDescriptor getProjectDescriptor() {
- return KotlinStdJSProjectDescriptor.Companion.getInstance();
+ return KotlinStdJSProjectDescriptor.INSTANCE;
}
@NotNull
diff --git a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt
index f764fe7073b..19c18181d34 100644
--- a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt
+++ b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt
@@ -130,7 +130,7 @@ abstract class KotlinLightCodeInsightFixtureTestCase : KotlinLightCodeInsightFix
return KotlinWithJdkAndRuntimeLightProjectDescriptor.INSTANCE
}
else if (InTextDirectivesUtils.isDirectiveDefined(fileText, "JS")) {
- return KotlinStdJSProjectDescriptor.instance
+ return KotlinStdJSProjectDescriptor
}
}
catch (e: IOException) {
diff --git a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinStdJSProjectDescriptor.kt b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinStdJSProjectDescriptor.kt
index 9230edf1945..c8c8ddfe09c 100644
--- a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinStdJSProjectDescriptor.kt
+++ b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/KotlinStdJSProjectDescriptor.kt
@@ -1,5 +1,5 @@
/*
- * Copyright 2010-2015 JetBrains s.r.o.
+ * Copyright 2010-2017 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,11 +16,24 @@
package org.jetbrains.kotlin.idea.test
-import com.intellij.testFramework.LightProjectDescriptor
+import com.intellij.openapi.module.Module
+import com.intellij.openapi.module.ModuleType
+import com.intellij.openapi.module.StdModuleTypes
+import com.intellij.openapi.projectRoots.Sdk
+import com.intellij.openapi.roots.ModifiableRootModel
+import com.intellij.openapi.roots.ui.configuration.libraryEditor.NewLibraryEditor
+import org.jetbrains.kotlin.idea.framework.JSLibraryStdDescription
-open class KotlinStdJSProjectDescriptor : KotlinLightProjectDescriptor() {
- companion object {
- val instance: KotlinStdJSProjectDescriptor
- = Class.forName("org.jetbrains.kotlin.test.KotlinStdJSProjectDescriptorImpl").newInstance() as KotlinStdJSProjectDescriptor
+object KotlinStdJSProjectDescriptor : KotlinLightProjectDescriptor() {
+ override fun getModuleType(): ModuleType<*> = StdModuleTypes.JAVA
+ override fun getSdk(): Sdk? = null
+
+ override fun configureModule(module: Module, model: ModifiableRootModel) {
+ val configuration = JSLibraryStdDescription(module.project).createNewLibraryForTests() ?: error("Configuration should exist")
+
+ val editor = NewLibraryEditor(configuration.libraryType, configuration.properties)
+ configuration.addRoots(editor)
+
+ ConfigLibraryUtil.addLibrary(editor, model)
}
}
\ No newline at end of file
diff --git a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/testUtils.kt b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/testUtils.kt
index eeaddd3633f..c39b77b0877 100644
--- a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/testUtils.kt
+++ b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/testUtils.kt
@@ -66,7 +66,7 @@ fun Module.configureAs(kind: ModuleKind) {
ModuleKind.KOTLIN_JVM_WITH_STDLIB_SOURCES ->
this.configureAs(ProjectDescriptorWithStdlibSources.INSTANCE)
ModuleKind.KOTLIN_JAVASCRIPT -> {
- this.configureAs(KotlinStdJSProjectDescriptor.instance)
+ this.configureAs(KotlinStdJSProjectDescriptor)
}
else -> throw IllegalArgumentException("Unknown kind=$kind")
diff --git a/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt b/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt
index 9fb39f46783..1177133bd74 100644
--- a/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt
+++ b/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt
@@ -22,7 +22,6 @@ import com.intellij.testFramework.LightProjectDescriptor
import junit.framework.TestCase
import org.jetbrains.kotlin.idea.core.formatter.KotlinCodeStyleSettings
import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase
-import org.jetbrains.kotlin.idea.test.KotlinStdJSProjectDescriptor
import org.jetbrains.kotlin.idea.test.KotlinWithJdkAndRuntimeLightProjectDescriptor
import org.jetbrains.kotlin.idea.util.application.executeWriteCommand
import org.jetbrains.kotlin.psi.KtFile
diff --git a/idea/tests/org/jetbrains/kotlin/checkers/AbstractJsCheckerTest.java b/idea/tests/org/jetbrains/kotlin/checkers/AbstractJsCheckerTest.java
index 2a9d9bffc16..902a56533d9 100644
--- a/idea/tests/org/jetbrains/kotlin/checkers/AbstractJsCheckerTest.java
+++ b/idea/tests/org/jetbrains/kotlin/checkers/AbstractJsCheckerTest.java
@@ -25,7 +25,7 @@ public abstract class AbstractJsCheckerTest extends KotlinLightCodeInsightFixtur
@NotNull
@Override
protected LightProjectDescriptor getProjectDescriptor() {
- return KotlinStdJSProjectDescriptor.Companion.getInstance();
+ return KotlinStdJSProjectDescriptor.INSTANCE;
}
public void doTest(String filePath) {
diff --git a/idea/tests/org/jetbrains/kotlin/idea/imports/AbstractOptimizeImportsTest.kt b/idea/tests/org/jetbrains/kotlin/idea/imports/AbstractOptimizeImportsTest.kt
index 90ffc0de807..c5734499329 100644
--- a/idea/tests/org/jetbrains/kotlin/idea/imports/AbstractOptimizeImportsTest.kt
+++ b/idea/tests/org/jetbrains/kotlin/idea/imports/AbstractOptimizeImportsTest.kt
@@ -17,8 +17,8 @@
package org.jetbrains.kotlin.idea.imports
import org.jetbrains.kotlin.AbstractImportsTest
-import org.jetbrains.kotlin.idea.test.KotlinStdJSProjectDescriptor
import org.jetbrains.kotlin.psi.KtFile
+import org.jetbrains.kotlin.idea.test.KotlinStdJSProjectDescriptor
abstract class AbstractOptimizeImportsTest() : AbstractImportsTest() {
override fun doTest(file: KtFile): String {
@@ -39,5 +39,5 @@ abstract class AbstractOptimizeImportsTest() : AbstractImportsTest() {
abstract class AbstractJvmOptimizeImportsTest : AbstractOptimizeImportsTest()
abstract class AbstractJsOptimizeImportsTest : AbstractOptimizeImportsTest() {
- override fun getProjectDescriptor() = KotlinStdJSProjectDescriptor.instance
+ override fun getProjectDescriptor() = KotlinStdJSProjectDescriptor
}
diff --git a/idea/tests/org/jetbrains/kotlin/test/KotlinStdJSProjectDescriptorImpl.java b/idea/tests/org/jetbrains/kotlin/test/KotlinStdJSProjectDescriptorImpl.java
deleted file mode 100644
index 42bdc4bbaf7..00000000000
--- a/idea/tests/org/jetbrains/kotlin/test/KotlinStdJSProjectDescriptorImpl.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2010-2015 JetBrains s.r.o.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.jetbrains.kotlin.test;
-
-import com.intellij.openapi.module.Module;
-import com.intellij.openapi.module.ModuleType;
-import com.intellij.openapi.module.StdModuleTypes;
-import com.intellij.openapi.projectRoots.Sdk;
-import com.intellij.openapi.roots.ModifiableRootModel;
-import com.intellij.openapi.roots.libraries.NewLibraryConfiguration;
-import com.intellij.openapi.roots.ui.configuration.libraryEditor.NewLibraryEditor;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.kotlin.idea.framework.JSLibraryStdDescription;
-import org.jetbrains.kotlin.idea.test.ConfigLibraryUtil;
-import org.jetbrains.kotlin.idea.test.KotlinStdJSProjectDescriptor;
-
-public class KotlinStdJSProjectDescriptorImpl extends KotlinStdJSProjectDescriptor {
- @Override
- public ModuleType getModuleType() {
- return StdModuleTypes.JAVA;
- }
-
- @Override
- public Sdk getSdk() {
- return null;
- }
-
- @Override
- public void configureModule(@NotNull Module module, @NotNull ModifiableRootModel model) {
- NewLibraryConfiguration configuration = new JSLibraryStdDescription(module.getProject()).createNewLibraryForTests();
-
- assert configuration != null : "Configuration should exist";
-
- NewLibraryEditor editor = new NewLibraryEditor(configuration.getLibraryType(), configuration.getProperties());
- configuration.addRoots(editor);
-
- ConfigLibraryUtil.addLibrary(editor, model);
- }
-}