mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-26 08:27:12 -07:00
Remove DependencyFactory, introduce IDependencyManager.
This commit is contained in:
parent
10f2344edb
commit
984c514fa4
18 changed files with 107 additions and 97 deletions
|
@ -10,8 +10,7 @@ import javax.inject.Inject
|
|||
import kotlin.properties.Delegates
|
||||
|
||||
@Guice(modules = arrayOf(TestModule::class))
|
||||
public class DependencyTest @Inject constructor(val depFactory: DependencyFactory,
|
||||
val executors: KobaltExecutors) {
|
||||
public class DependencyTest @Inject constructor(val executors: KobaltExecutors) {
|
||||
|
||||
@DataProvider
|
||||
fun dpVersions(): Array<Array<out Any>> {
|
||||
|
|
|
@ -18,7 +18,6 @@ class DownloadTest @Inject constructor(
|
|||
val localRepo: LocalRepo,
|
||||
val pomFactory: Pom.IFactory,
|
||||
val dependencyManager: DependencyManager,
|
||||
val depFactory: DependencyFactory,
|
||||
val aether: KobaltAether,
|
||||
val executors: KobaltExecutors) : KobaltTest() {
|
||||
private var executor: ExecutorService by Delegates.notNull()
|
||||
|
@ -40,7 +39,7 @@ class DownloadTest @Inject constructor(
|
|||
|
||||
if (success) {
|
||||
arrayListOf("$groupId:$artifactId:$version", "$groupId:$artifactId:$previousVersion").forEach {
|
||||
val dep = depFactory.create(it)
|
||||
val dep = dependencyManager.create(it)
|
||||
val future = dep.jarFile
|
||||
val file = future.get()
|
||||
Assert.assertTrue(file.exists(), "Couldn't find ${file.absolutePath}")
|
||||
|
@ -60,7 +59,7 @@ class DownloadTest @Inject constructor(
|
|||
fun shouldDownloadNoVersion() {
|
||||
val success = deleteDir()
|
||||
if (success) {
|
||||
val dep = depFactory.create(idNoVersion)
|
||||
val dep = dependencyManager.create(idNoVersion)
|
||||
|
||||
val future = dep.jarFile
|
||||
val file = future.get()
|
||||
|
@ -77,7 +76,7 @@ class DownloadTest @Inject constructor(
|
|||
val range = "[2.5,)"
|
||||
val expected = "3.0-alpha-1"
|
||||
|
||||
val dep = depFactory.create("javax.servlet:servlet-api:$range")
|
||||
val dep = dependencyManager.create("javax.servlet:servlet-api:$range")
|
||||
val future = dep.jarFile
|
||||
val file = future.get()
|
||||
Assert.assertEquals(file.name, "servlet-api-$expected.jar")
|
||||
|
@ -86,8 +85,8 @@ class DownloadTest @Inject constructor(
|
|||
|
||||
@Test
|
||||
fun shouldFindLocalJar() {
|
||||
depFactory.create("$idNoVersion$version")
|
||||
val dep = depFactory.create("$idNoVersion$version")
|
||||
dependencyManager.create("$idNoVersion$version")
|
||||
val dep = dependencyManager.create("$idNoVersion$version")
|
||||
val future = dep.jarFile
|
||||
// Assert.assertTrue(future is CompletedFuture)
|
||||
val file = future.get()
|
||||
|
@ -96,11 +95,11 @@ class DownloadTest @Inject constructor(
|
|||
|
||||
@Test
|
||||
fun shouldFindLocalJarNoVersion() {
|
||||
val dep = depFactory.create("$idNoVersion$version")
|
||||
val dep = dependencyManager.create("$idNoVersion$version")
|
||||
val future = dep.jarFile
|
||||
future.get().delete()
|
||||
|
||||
val dep2 = depFactory.create("$idNoVersion$version")
|
||||
val dep2 = dependencyManager.create("$idNoVersion$version")
|
||||
val file = dep2.jarFile.get()
|
||||
Assert.assertNotNull(file)
|
||||
Assert.assertTrue(file.exists(), "Couldn't find ${file.absolutePath}")
|
||||
|
@ -140,7 +139,7 @@ class DownloadTest @Inject constructor(
|
|||
@Test
|
||||
fun containerPomTest() {
|
||||
File(localRepo.toFullPath("nl/komponents/kovenant")).deleteRecursively()
|
||||
val dep = depFactory.create("nl.komponents.kovenant:kovenant:3.0.0")
|
||||
val dep = dependencyManager.create("nl.komponents.kovenant:kovenant:3.0.0")
|
||||
dep.directDependencies().forEach {
|
||||
Assert.assertTrue(it.jarFile.get().exists(), "Dependency was not downloaded: $it")
|
||||
}
|
||||
|
|
|
@ -6,9 +6,9 @@ import org.testng.Assert
|
|||
import org.testng.annotations.Test
|
||||
|
||||
@Test
|
||||
class PomGenerationTest @Inject constructor(val depFactory: DependencyFactory): KobaltTest() {
|
||||
class PomGenerationTest @Inject constructor(val dependencyManager: DependencyManager): KobaltTest() {
|
||||
fun shouldGenerateDependencies() {
|
||||
val md = depFactory.create("org.testng:testng:6.9.9").toMavenDependencies()
|
||||
val md = dependencyManager.create("org.testng:testng:6.9.9").toMavenDependencies()
|
||||
Assert.assertEquals(md.groupId, "org.testng")
|
||||
Assert.assertEquals(md.artifactId, "testng")
|
||||
Assert.assertEquals(md.version, "6.9.9")
|
||||
|
|
|
@ -1,21 +1,17 @@
|
|||
package com.beust.kobalt.maven
|
||||
|
||||
import com.beust.kobalt.Args
|
||||
import com.beust.kobalt.TestModule
|
||||
import com.beust.kobalt.misc.DependencyExecutor
|
||||
import org.testng.Assert
|
||||
import org.testng.annotations.Test
|
||||
import java.util.concurrent.ExecutorService
|
||||
import javax.inject.Inject
|
||||
|
||||
@Test
|
||||
@org.testng.annotations.Guice(modules = arrayOf(TestModule::class))
|
||||
class RemoteRepoTest @Inject constructor(val repoFinder: RepoFinder, val depFactory: DependencyFactory,
|
||||
@DependencyExecutor val executor: ExecutorService, val args: Args){
|
||||
class RemoteRepoTest @Inject constructor(val repoFinder: RepoFinder, val dependencyManager: DependencyManager){
|
||||
|
||||
@Test
|
||||
fun mavenMetadata() {
|
||||
val dep = depFactory.create("org.codehaus.groovy:groovy-all:")
|
||||
val dep = dependencyManager.create("org.codehaus.groovy:groovy-all:")
|
||||
// Note: this test might fail if a new version of Groovy gets uploaded, need
|
||||
// to find a stable (i.e. abandoned) package
|
||||
with(dep.id.split(":")[2]) {
|
||||
|
@ -25,7 +21,7 @@ class RemoteRepoTest @Inject constructor(val repoFinder: RepoFinder, val depFact
|
|||
|
||||
@Test(enabled = false)
|
||||
fun metadataForSnapshots() {
|
||||
val jar = depFactory.create("org.apache.maven.wagon:wagon-provider-test:2.10-SNAPSHOT")
|
||||
val jar = dependencyManager.create("org.apache.maven.wagon:wagon-provider-test:2.10-SNAPSHOT")
|
||||
Assert.assertTrue(jar.jarFile.get().exists())
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue