diff --git a/idea/testData/configuration/jsLibraryVersion106/module.iml b/idea/testData/configuration/jsLibraryVersion106/module.iml new file mode 100644 index 00000000000..4a3ded12725 --- /dev/null +++ b/idea/testData/configuration/jsLibraryVersion106/module.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/configuration/jsLibraryVersion106/projectFile.ipr b/idea/testData/configuration/jsLibraryVersion106/projectFile.ipr new file mode 100644 index 00000000000..edc8cddda06 --- /dev/null +++ b/idea/testData/configuration/jsLibraryVersion106/projectFile.ipr @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/configuration/jsLibraryVersion106/src/foo.kt b/idea/testData/configuration/jsLibraryVersion106/src/foo.kt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/idea/testData/configuration/jsLibraryVersion11/module.iml b/idea/testData/configuration/jsLibraryVersion11/module.iml new file mode 100644 index 00000000000..4a3ded12725 --- /dev/null +++ b/idea/testData/configuration/jsLibraryVersion11/module.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/configuration/jsLibraryVersion11/projectFile.ipr b/idea/testData/configuration/jsLibraryVersion11/projectFile.ipr new file mode 100644 index 00000000000..6446db85e1d --- /dev/null +++ b/idea/testData/configuration/jsLibraryVersion11/projectFile.ipr @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/configuration/jsLibraryVersion11/src/foo.kt b/idea/testData/configuration/jsLibraryVersion11/src/foo.kt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/idea/testData/configuration/jsRuntime106/kotlin-jslib.jar b/idea/testData/configuration/jsRuntime106/kotlin-jslib.jar new file mode 100644 index 00000000000..7aa2683a7d0 Binary files /dev/null and b/idea/testData/configuration/jsRuntime106/kotlin-jslib.jar differ diff --git a/idea/testData/configuration/jsRuntime11Maven/kotlin-stdlib-js-1.1.0.jar b/idea/testData/configuration/jsRuntime11Maven/kotlin-stdlib-js-1.1.0.jar new file mode 100644 index 00000000000..08d147c94b5 Binary files /dev/null and b/idea/testData/configuration/jsRuntime11Maven/kotlin-stdlib-js-1.1.0.jar differ diff --git a/idea/tests/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinTest.java b/idea/tests/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinTest.java index ed7f97eb216..0d03099f8b0 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinTest.java +++ b/idea/tests/org/jetbrains/kotlin/idea/configuration/ConfigureKotlinTest.java @@ -16,12 +16,21 @@ package org.jetbrains.kotlin.idea.configuration; +import com.intellij.framework.library.LibraryVersionProperties; +import com.intellij.openapi.application.PathMacros; import com.intellij.openapi.module.Module; +import com.intellij.openapi.module.ModuleManager; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.roots.libraries.Library; import com.intellij.openapi.util.io.FileUtil; import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments; import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments; import org.jetbrains.kotlin.config.*; +import org.jetbrains.kotlin.idea.framework.JSLibraryStdPresentationProvider; +import org.jetbrains.kotlin.idea.framework.KotlinLibraryUtilKt; import org.jetbrains.kotlin.idea.project.PlatformKt; +import org.jetbrains.kotlin.idea.versions.KotlinRuntimeLibraryUtilKt; +import org.jetbrains.kotlin.utils.PathUtil; import java.io.File; import java.io.IOException; @@ -153,6 +162,27 @@ public class ConfigureKotlinTest extends AbstractConfigureKotlinTest { assertEquals(LanguageVersion.KOTLIN_1_0, PlatformKt.getLanguageVersionSettings(getModule()).getLanguageVersion()); } + public void testJsLibraryVersion11() { + Library jsRuntime = KotlinRuntimeLibraryUtilKt.findAllUsedLibraries(myProject).keySet().iterator().next(); + LibraryVersionProperties properties = KotlinLibraryUtilKt.getLibraryProperties(JSLibraryStdPresentationProvider.getInstance(), jsRuntime); + assertEquals("1.1.0", properties.getVersionString()); + } + + public void testJsLibraryVersion106() { + Library jsRuntime = KotlinRuntimeLibraryUtilKt.findAllUsedLibraries(myProject).keySet().iterator().next(); + LibraryVersionProperties properties = KotlinLibraryUtilKt.getLibraryProperties(JSLibraryStdPresentationProvider.getInstance(), jsRuntime); + assertEquals("1.0.6", properties.getVersionString()); + } + + private void doTestConfigureModulesWithNonDefaultSetup(KotlinWithLibraryConfigurator configurator) { + assertNoFilesInDefaultPaths(); + + Module[] modules = getModules(); + for (Module module : modules) { + assertNotConfigured(module, configurator); + } + } + @SuppressWarnings("ConstantConditions") public void testJvmProjectWithV1FacetConfig() { KotlinFacetSettings settings = KotlinFacetSettingsProvider.Companion.getInstance(myProject).getSettings(getModule());