diff --git a/libraries/scripting/dependencies-maven/src/kotlin/script/experimental/dependencies/maven/MavenDependenciesResolver.kt b/libraries/scripting/dependencies-maven/src/kotlin/script/experimental/dependencies/maven/MavenDependenciesResolver.kt index b993deeb678..3b9a0221893 100644 --- a/libraries/scripting/dependencies-maven/src/kotlin/script/experimental/dependencies/maven/MavenDependenciesResolver.kt +++ b/libraries/scripting/dependencies-maven/src/kotlin/script/experimental/dependencies/maven/MavenDependenciesResolver.kt @@ -174,7 +174,7 @@ class MavenDependenciesResolver : ExternalDependenciesResolver { } } - return makeResolveFailureResult(message, location) + return makeResolveFailureResult(listOf(message), location, exception) } } } \ No newline at end of file diff --git a/libraries/scripting/dependencies-maven/test/kotlin/script/experimental/test/MavenResolverTest.kt b/libraries/scripting/dependencies-maven/test/kotlin/script/experimental/test/MavenResolverTest.kt index 978d87d3e56..c0dba2de024 100644 --- a/libraries/scripting/dependencies-maven/test/kotlin/script/experimental/test/MavenResolverTest.kt +++ b/libraries/scripting/dependencies-maven/test/kotlin/script/experimental/test/MavenResolverTest.kt @@ -131,19 +131,21 @@ class MavenResolverTest : ResolversTestBase() { DependenciesResolverOptionsName.PASSWORD to "invalid password", ) resolver.addRepository("https://packages.jetbrains.team/maven/p/crl/maven/", options) + // If the real space-sdk is in Maven Local, test will not fail val result = runBlocking { - resolver.resolve("com.jetbrains:space-sdk:1.0-dev") + resolver.resolve("com.jetbrains:fake-space-sdk:1.0-dev") } as ResultWithDiagnostics.Failure assertEquals(1, result.reports.size) val diagnostic = result.reports.single() assertEquals( - "ArtifactResolutionException: Could not transfer artifact com.jetbrains:space-sdk:pom:1.0-dev " + + "ArtifactResolutionException: Could not transfer artifact com.jetbrains:fake-space-sdk:pom:1.0-dev " + "from/to https___packages.jetbrains.team_maven_p_crl_maven_ (https://packages.jetbrains.team/maven/p/crl/maven/): " + - "authentication failed for https://packages.jetbrains.team/maven/p/crl/maven/com/jetbrains/space-sdk/1.0-dev/space-sdk-1.0-dev.pom, " + + "authentication failed for https://packages.jetbrains.team/maven/p/crl/maven/com/jetbrains/fake-space-sdk/1.0-dev/fake-space-sdk-1.0-dev.pom, " + "status: 401 Unauthorized", diagnostic.message ) + assertNotNull(diagnostic.exception) } fun testAuthIncorrectEnvUsage() { diff --git a/libraries/scripting/dependencies/src/kotlin/script/experimental/dependencies/impl/resolverUtils.kt b/libraries/scripting/dependencies/src/kotlin/script/experimental/dependencies/impl/resolverUtils.kt index 6f1a0cd274c..7ad6179379b 100644 --- a/libraries/scripting/dependencies/src/kotlin/script/experimental/dependencies/impl/resolverUtils.kt +++ b/libraries/scripting/dependencies/src/kotlin/script/experimental/dependencies/impl/resolverUtils.kt @@ -12,12 +12,16 @@ import kotlin.script.experimental.api.ResultWithDiagnostics import kotlin.script.experimental.api.ScriptDiagnostic import kotlin.script.experimental.api.SourceCode -fun makeResolveFailureResult(message: String, location: SourceCode.LocationWithId? = null) = makeResolveFailureResult(listOf(message), location) +fun makeResolveFailureResult(message: String, location: SourceCode.LocationWithId? = null) = + makeResolveFailureResult(listOf(message), location) fun makeResolveFailureResult(messages: Iterable, location: SourceCode.LocationWithId? = null) = + makeResolveFailureResult(messages, location, null) + +fun makeResolveFailureResult(messages: Iterable, location: SourceCode.LocationWithId?, throwable: Throwable?) = ResultWithDiagnostics.Failure( messages.map { - ScriptDiagnostic(ScriptDiagnostic.unspecifiedError, it, ScriptDiagnostic.Severity.WARNING, location) + ScriptDiagnostic(ScriptDiagnostic.unspecifiedError, it, ScriptDiagnostic.Severity.WARNING, location, throwable) } )