[JS] Use kotlin-stdlib-js.klib instead of *.jar
This commit is contained in:
committed by
Space Team
parent
a79324037d
commit
e9cc2931cc
+2
-4
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.analysis.project.structure.builder.buildKtLibraryMod
|
||||
import org.jetbrains.kotlin.analysis.project.structure.builder.buildKtSdkModule
|
||||
import org.jetbrains.kotlin.analysis.project.structure.builder.buildKtSourceModule
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
@@ -32,7 +31,6 @@ import org.jetbrains.kotlin.platform.js.JsPlatforms
|
||||
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
|
||||
import org.jetbrains.kotlin.psi.KtCallExpression
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.psi.KtTypeReference
|
||||
import org.jetbrains.kotlin.psi.psiUtil.findDescendantOfType
|
||||
import org.jetbrains.kotlin.utils.PathUtil
|
||||
import org.junit.jupiter.api.Assertions
|
||||
@@ -91,14 +89,14 @@ class StandaloneSessionBuilderTest {
|
||||
|
||||
@Test
|
||||
fun testKotlinStdLibJs() {
|
||||
doTestKotlinStdLibResolve(JsPlatforms.defaultJsPlatform, PathUtil.kotlinPathsForDistDirectory.jsStdLibJarPath.toPath())
|
||||
doTestKotlinStdLibResolve(JsPlatforms.defaultJsPlatform, PathUtil.kotlinPathsForDistDirectory.jsStdLibKlibPath.toPath())
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testKotlinStdLibJsWithInvalidKlib() {
|
||||
doTestKotlinStdLibResolve(
|
||||
JsPlatforms.defaultJsPlatform,
|
||||
PathUtil.kotlinPathsForDistDirectory.jsStdLibJarPath.toPath(),
|
||||
PathUtil.kotlinPathsForDistDirectory.jsStdLibKlibPath.toPath(),
|
||||
additionalStdlibRoots = listOf(
|
||||
Paths.get(System.getProperty("java.home")), // directory which exists and does not contain KLibs inside
|
||||
PathUtil.kotlinPathsForDistDirectory.stdlibPath.toPath(), // file which exists and not a KLib
|
||||
|
||||
+1
-1
@@ -82,7 +82,7 @@ public class ForTestCompileRuntime {
|
||||
|
||||
@NotNull
|
||||
public static File stdlibJsForTests() {
|
||||
return assertExists(new File("dist/kotlinc/lib/kotlin-stdlib-js.jar"));
|
||||
return assertExists(new File("dist/kotlinc/lib/kotlin-stdlib-js.klib"));
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
+4
-4
@@ -73,7 +73,7 @@ abstract class KotlinStandardLibrariesPathProvider : TestService {
|
||||
abstract fun getAnnotationsJar(): File
|
||||
|
||||
/**
|
||||
* kotlin-stdlib-js.jar
|
||||
* kotlin-stdlib-js.klib
|
||||
*/
|
||||
abstract fun fullJsStdlib(): File
|
||||
|
||||
@@ -124,9 +124,9 @@ object StandardLibrariesPathProviderForKotlinProject : KotlinStandardLibrariesPa
|
||||
override fun jvmAnnotationsForTests(): File = ForTestCompileRuntime.jvmAnnotationsForTests()
|
||||
override fun getAnnotationsJar(): File = KtTestUtil.getAnnotationsJar()
|
||||
|
||||
override fun fullJsStdlib(): File = extractFromPropertyFirst("kotlin.js.full.stdlib.path") { "kotlin-stdlib-js.jar".dist() }
|
||||
override fun defaultJsStdlib(): File = extractFromPropertyFirst("kotlin.js.reduced.stdlib.path") { "kotlin-stdlib-js.jar".dist() }
|
||||
override fun kotlinTestJsKLib(): File = extractFromPropertyFirst("kotlin.js.kotlin.test.path") { "kotlin-test-js.jar".dist() }
|
||||
override fun fullJsStdlib(): File = extractFromPropertyFirst("kotlin.js.full.stdlib.path") { "kotlin-stdlib-js.klib".dist() }
|
||||
override fun defaultJsStdlib(): File = extractFromPropertyFirst("kotlin.js.reduced.stdlib.path") { "kotlin-stdlib-js.klib".dist() }
|
||||
override fun kotlinTestJsKLib(): File = extractFromPropertyFirst("kotlin.js.kotlin.test.path") { "kotlin-test-js.klib".dist() }
|
||||
|
||||
private inline fun extractFromPropertyFirst(prop: String, onMissingProperty: () -> String): File {
|
||||
val path = System.getProperty(prop, null) ?: onMissingProperty()
|
||||
|
||||
Reference in New Issue
Block a user