Implement non-transitive dependencies resolving in main-kts
This commit is contained in:
+12
@@ -47,6 +47,18 @@ class MainKtsTest {
|
||||
assertSucceeded(res)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testResolveHamcrestViaJunit() {
|
||||
val resOk = evalFile(File("$TEST_DATA_ROOT/resolve-hamcrest-via-junit.main.kts"))
|
||||
assertSucceeded(resOk)
|
||||
|
||||
val resErr = evalFile(File("$TEST_DATA_ROOT/resolve-error-hamcrest-via-junit.main.kts"))
|
||||
Assert.assertTrue(
|
||||
resErr is ResultWithDiagnostics.Failure &&
|
||||
resErr.reports.any { it.message == "Unresolved reference: hamcrest" }
|
||||
)
|
||||
}
|
||||
|
||||
// @Test
|
||||
// this test is disabled: the resolving works fine, but ivy resolver is not processing "pom"-type dependencies correctly (
|
||||
// as far as I can tell)
|
||||
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
|
||||
@file:DependsOn("junit:junit:4.11", options = ["transitive=false"])
|
||||
|
||||
org.hamcrest.Description.NullDescription()
|
||||
|
||||
println("Hello, World!")
|
||||
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
|
||||
@file:DependsOn("junit:junit:4.11")
|
||||
|
||||
org.hamcrest.Description.NullDescription()
|
||||
|
||||
println("Hello, World!")
|
||||
|
||||
@@ -51,6 +51,7 @@ class IvyResolver : ExternalDependenciesResolver {
|
||||
artifactId[0], artifactId[1], artifactId[2],
|
||||
if (artifactId.size > 3) artifactId[3] else null,
|
||||
if (artifactType.isNotEmpty()) artifactType else null,
|
||||
options,
|
||||
sourceCodeLocation
|
||||
)
|
||||
} catch (e: Exception) {
|
||||
@@ -69,6 +70,7 @@ class IvyResolver : ExternalDependenciesResolver {
|
||||
revision: String,
|
||||
conf: String? = null,
|
||||
type: String? = null,
|
||||
options: ExternalDependenciesResolver.Options,
|
||||
sourceCodeLocation: SourceCode.LocationWithId? = null
|
||||
): ResultWithDiagnostics<List<File>> {
|
||||
|
||||
@@ -112,10 +114,15 @@ class IvyResolver : ExternalDependenciesResolver {
|
||||
depsDescriptor.addDependencyConfiguration("default", "master,compile")
|
||||
moduleDescriptor.addDependency(depsDescriptor)
|
||||
|
||||
val isTransitive = options.flag("transitive") != false
|
||||
|
||||
val resolveOptions = ResolveOptions().apply {
|
||||
confs = arrayOf("default")
|
||||
log = LogOptions.LOG_QUIET
|
||||
isOutputReport = false
|
||||
if (!isTransitive) {
|
||||
this.isTransitive = false
|
||||
}
|
||||
}
|
||||
|
||||
//init resolve report
|
||||
|
||||
Reference in New Issue
Block a user