Search in sources :

Example 61 with Ivy

use of org.apache.ivy.Ivy in project ant-ivy by apache.

the class ResolveTest method testErrorResolveMaven2SelfAsParent.

@Test
public void testErrorResolveMaven2SelfAsParent() throws Exception {
    // IVY-1545
    // test7 has parent == self
    Ivy ivy = new Ivy();
    ivy.configure(new File("test/repositories/parentPom/ivysettings.xml"));
    ivy.getSettings().setDefaultResolver("parentChain");
    try {
        ivy.resolve(new File("test/repositories/parentPom/org/apache/dm/test7/1.0/test7-1.0.pom"), getResolveOptions(new String[] { "*" }));
        // don't expect to get here, should suffer StackOverflowError if cycle is not detected
        fail("Expected CircularDependencyException from parent cycle detection");
    } catch (CircularDependencyException e) {
        // ok
        assertEquals("org.apache.dm#test7;1.0", e.getMessage());
    }
}
Also used : Ivy(org.apache.ivy.Ivy) JarFile(java.util.jar.JarFile) File(java.io.File) CircularDependencyException(org.apache.ivy.plugins.circular.CircularDependencyException) Test(org.junit.Test)

Example 62 with Ivy

use of org.apache.ivy.Ivy in project ant-ivy by apache.

the class ResolveTest method testExtraAttributesMultipleDependenciesHang.

@Test
public void testExtraAttributesMultipleDependenciesHang() throws Exception {
    Ivy ivy = new Ivy();
    ivy.configure(new File("test/repositories/extra-attributes-multipledependencies/ivysettings-filerepo-attribs.xml"));
    ivy.getSettings().setDefaultCache(cache);
    ResolveReport report = ivy.resolve(ResolveTest.class.getResource("ivy-extra-att-multipledependencies.xml"), getResolveOptions(ivy.getSettings(), new String[] { "*" }).setValidate(false));
    assertFalse(report.hasError());
}
Also used : ConfigurationResolveReport(org.apache.ivy.core.report.ConfigurationResolveReport) ResolveReport(org.apache.ivy.core.report.ResolveReport) Ivy(org.apache.ivy.Ivy) JarFile(java.util.jar.JarFile) File(java.io.File) Test(org.junit.Test)

Example 63 with Ivy

use of org.apache.ivy.Ivy in project ant-ivy by apache.

the class ResolveTest method testIVY1347.

/**
 * Test case for IVY-1347.
 *
 * @throws Exception if something goes wrong
 * @see <a href="https://issues.apache.org/jira/browse/IVY-1347">IVY-1347</a>
 */
@Test
public void testIVY1347() throws Exception {
    Ivy ivy = new Ivy();
    ivy.configure(new File("test/repositories/IVY-1347/ivysettings.xml"));
    ivy.getSettings().setDefaultCache(cache);
    ResolveReport rr = ivy.resolve(new File("test/repositories/IVY-1347/childone/childtwo/ivy.xml"), getResolveOptions(new String[] { "*" }));
    ModuleDescriptor md = rr.getModuleDescriptor();
    assertNotNull(md);
    ExtendsDescriptor[] parents = md.getInheritedDescriptors();
    assertNotNull(parents);
    assertEquals(1, parents.length);
    ModuleRevisionId parent = parents[0].getParentRevisionId();
    assertEquals(ModuleRevisionId.newInstance("foo", "parent", "1.0"), parent);
}
Also used : ModuleDescriptor(org.apache.ivy.core.module.descriptor.ModuleDescriptor) ExtendsDescriptor(org.apache.ivy.core.module.descriptor.ExtendsDescriptor) ConfigurationResolveReport(org.apache.ivy.core.report.ConfigurationResolveReport) ResolveReport(org.apache.ivy.core.report.ResolveReport) ModuleRevisionId(org.apache.ivy.core.module.id.ModuleRevisionId) Ivy(org.apache.ivy.Ivy) JarFile(java.util.jar.JarFile) File(java.io.File) Test(org.junit.Test)

Example 64 with Ivy

use of org.apache.ivy.Ivy in project ant-ivy by apache.

the class ResolveTest method testConfigurationMapping6.

/**
 * Test case for IVY-84.
 *
 * @throws Exception if something goes wrong
 * @see <a href="https://issues.apache.org/jira/browse/IVY-84">IVY-84</a>
 */
@Test
public void testConfigurationMapping6() throws Exception {
    Ivy ivy = new Ivy();
    ivy.configure(new File("test/repositories/IVY-84/ivysettings.xml"));
    ResolveReport report = ivy.resolve(new File("test/repositories/IVY-84/tests/6/ivy.xml"), getResolveOptions(new String[] { "default", "buildtime" }));
    ConfigurationResolveReport conf = report.getConfigurationReport("default");
    assertContainsArtifact("test", "a", "1.0.2", "a", "txt", "txt", conf);
    assertDoesntContainArtifact("test", "a", "1.0.2", "a-bt", "txt", "txt", conf);
    assertContainsArtifact("test", "b", "1.0.1", "b", "txt", "txt", conf);
    assertDoesntContainArtifact("test", "b", "1.0.1", "b-bt", "txt", "txt", conf);
    assertContainsArtifact("test", "c", "1.0.1", "c", "txt", "txt", conf);
    assertDoesntContainArtifact("test", "c", "1.0.1", "c-bt", "txt", "txt", conf);
}
Also used : ConfigurationResolveReport(org.apache.ivy.core.report.ConfigurationResolveReport) ResolveReport(org.apache.ivy.core.report.ResolveReport) ConfigurationResolveReport(org.apache.ivy.core.report.ConfigurationResolveReport) Ivy(org.apache.ivy.Ivy) JarFile(java.util.jar.JarFile) File(java.io.File) Test(org.junit.Test)

Example 65 with Ivy

use of org.apache.ivy.Ivy in project ant-ivy by apache.

the class ResolveTest method testResolveWithConflictManagerPerModule.

/**
 * Test case for IVY-448.
 *
 * @throws Exception if something goes wrong
 * @see <a href="https://issues.apache.org/jira/browse/IVY-448">IVY-448</a>
 */
@Test
public void testResolveWithConflictManagerPerModule() throws Exception {
    // all modules from myorg
    // module1
    // -> module2-1.0
    // -> module3-2.0
    // module2
    // -> module3-1.0
    // settings use 'all' as default conflict manager, and latest-revision for modules from
    // myorg
    Ivy ivy = new Ivy();
    ivy.configure(new File("test/repositories/IVY-448/ivysettings.xml"));
    ResolveReport report = ivy.resolve(new File("test/repositories/IVY-448/ivy.xml"), getResolveOptions(new String[] { "*" }));
    assertFalse(report.hasError());
    // rev 1.0 should have been evicted by latest-revision conflict manager
    assertTrue(getArchiveFileInCache(ivy, "myorg", "module3", "2.0", "module3", "jar", "jar").exists());
    assertFalse(getArchiveFileInCache(ivy, "myorg", "module3", "1.0", "module3", "jar", "jar").exists());
}
Also used : ConfigurationResolveReport(org.apache.ivy.core.report.ConfigurationResolveReport) ResolveReport(org.apache.ivy.core.report.ResolveReport) Ivy(org.apache.ivy.Ivy) JarFile(java.util.jar.JarFile) File(java.io.File) Test(org.junit.Test)

Aggregations

Ivy (org.apache.ivy.Ivy)169 File (java.io.File)147 Test (org.junit.Test)137 ResolveReport (org.apache.ivy.core.report.ResolveReport)102 JarFile (java.util.jar.JarFile)100 ConfigurationResolveReport (org.apache.ivy.core.report.ConfigurationResolveReport)97 ModuleRevisionId (org.apache.ivy.core.module.id.ModuleRevisionId)40 IvySettings (org.apache.ivy.core.settings.IvySettings)26 ModuleDescriptor (org.apache.ivy.core.module.descriptor.ModuleDescriptor)23 BuildException (org.apache.tools.ant.BuildException)17 Before (org.junit.Before)12 HashMap (java.util.HashMap)9 DependencyResolver (org.apache.ivy.plugins.resolver.DependencyResolver)8 RepositoryCacheManager (org.apache.ivy.core.cache.RepositoryCacheManager)6 ResolveOptions (org.apache.ivy.core.resolve.ResolveOptions)6 DefaultRepositoryCacheManager (org.apache.ivy.core.cache.DefaultRepositoryCacheManager)5 ModuleId (org.apache.ivy.core.module.id.ModuleId)5 IOException (java.io.IOException)4 ParseException (java.text.ParseException)4 Date (java.util.Date)4