Search in sources :

Example 91 with Processor

use of aQute.bnd.osgi.Processor in project bnd by bndtools.

the class PomRepositoryTest method testSearchRepoMultipleConfigurationsDontBreak.

public void testSearchRepoMultipleConfigurationsDontBreak() throws Exception {
    Workspace w = Workspace.createStandaloneWorkspace(new Processor(), tmp.toURI());
    w.setBase(tmp);
    BndPomRepository mcsrBnd320 = new BndPomRepository();
    mcsrBnd320.setRegistry(w);
    Map<String, String> config = new HashMap<>();
    config.put("query", "q=g:biz.aQute.bnd+a:biz.aQute.bnd+AND+v:3.2.0");
    config.put("name", "bnd320");
    mcsrBnd320.setProperties(config);
    BndPomRepository mcsrBnd330 = new BndPomRepository();
    mcsrBnd330.setRegistry(w);
    config = new HashMap<>();
    config.put("query", "q=g:biz.aQute.bnd+a:biz.aQute.bnd+AND+v:3.3.0");
    config.put("name", "bnd330");
    mcsrBnd330.setProperties(config);
    List<String> list320 = mcsrBnd320.list(null);
    assertNotNull(list320);
    assertEquals(1, list320.size());
    List<String> list330 = mcsrBnd330.list(null);
    assertNotNull(list330);
    assertEquals(1, list330.size());
    // check the first repo to make sure it's there.
    RequirementBuilder builder = mcsrBnd320.newRequirementBuilder("osgi.identity");
    builder.addDirective("filter", "(&(osgi.identity=biz.aQute.bnd)(version>=3.2.0)(!(version>=3.3.0)))");
    Promise<Collection<Resource>> providers = mcsrBnd320.findProviders(builder.buildExpression());
    Collection<Resource> resources = providers.getValue();
    assertFalse(resources.isEmpty());
    assertEquals(1, resources.size());
    // make sure it's not in the second repo, otherwise the caches are
    // messed up.
    providers = mcsrBnd330.findProviders(builder.buildExpression());
    resources = providers.getValue();
    assertTrue(resources.isEmpty());
    assertEquals(0, resources.size());
}
Also used : Processor(aQute.bnd.osgi.Processor) HashMap(java.util.HashMap) Resource(org.osgi.resource.Resource) RequirementBuilder(org.osgi.service.repository.RequirementBuilder) Collection(java.util.Collection) Workspace(aQute.bnd.build.Workspace)

Example 92 with Processor

use of aQute.bnd.osgi.Processor in project bnd by bndtools.

the class PomRepositoryTest method testDependenciesWithVersionRanges.

public void testDependenciesWithVersionRanges() throws Exception {
    BndPomRepository bpr = new BndPomRepository();
    Workspace w = Workspace.createStandaloneWorkspace(new Processor(), tmp.toURI());
    w.setBase(tmp);
    bpr.setRegistry(w);
    Map<String, String> config = new HashMap<>();
    config.put("revision", "com.mchange:mchange-commons-java:0.2.10");
    config.put("snapshotUrls", "https://repo1.maven.org/maven2/");
    config.put("releaseUrls", "https://repo1.maven.org/maven2/");
    config.put("name", "test");
    bpr.setProperties(config);
    List<String> list = bpr.list(null);
    for (String bsn : list) {
        SortedSet<Version> versions = bpr.versions(bsn);
        assertEquals(1, versions.size());
        Version v = versions.first();
        switch(bsn) {
            case "log4j:log4j":
                assertEquals("1.2.14", v.toString());
                break;
            case "com.typesafe.config":
                assertEquals("1.2.1", v.toString());
                break;
            case "com.mchange:mchange-commons-java":
                assertEquals("0.2.10", v.toString());
                break;
            case "slf4j.api":
                assertEquals("1.7.5", v.toString());
                break;
            default:
                fail(bsn);
        }
    }
    assertNotNull(list);
    assertEquals(4, list.size());
}
Also used : Processor(aQute.bnd.osgi.Processor) HashMap(java.util.HashMap) Version(aQute.bnd.version.Version) Workspace(aQute.bnd.build.Workspace)

Example 93 with Processor

use of aQute.bnd.osgi.Processor in project bnd by bndtools.

the class PomRepositoryTest method testBndPomRepoFileMissingParent.

public void testBndPomRepoFileMissingParent() throws Exception {
    BndPomRepository bpr = new BndPomRepository();
    Workspace w = Workspace.createStandaloneWorkspace(new Processor(), tmp.toURI());
    w.setBase(tmp);
    bpr.setRegistry(w);
    Map<String, String> config = new HashMap<>();
    config.put("pom", "testdata/pomrepo/missing-parent.xml");
    config.put("snapshotUrls", "https://repo1.maven.org/maven2/");
    config.put("releaseUrls", "https://repo1.maven.org/maven2/");
    config.put("name", "test");
    bpr.setProperties(config);
    try {
        bpr.list(null);
        fail("Should throw IllegalArgumentException on missing parent pom.");
    } catch (Exception iae) {
    // This exception is expected!
    }
}
Also used : Processor(aQute.bnd.osgi.Processor) HashMap(java.util.HashMap) Workspace(aQute.bnd.build.Workspace)

Example 94 with Processor

use of aQute.bnd.osgi.Processor in project bnd by bndtools.

the class PomRepositoryTest method testSearchRepoFailNoQuery.

public void testSearchRepoFailNoQuery() throws Exception {
    BndPomRepository mcsr = new BndPomRepository();
    Workspace w = Workspace.createStandaloneWorkspace(new Processor(), tmp.toURI());
    w.setBase(tmp);
    mcsr.setRegistry(w);
    Map<String, String> config = new HashMap<>();
    config.put("name", "test");
    try {
        mcsr.setProperties(config);
        fail();
    } catch (Exception e) {
        assertEquals("Neither pom, revision nor query property are set", e.getMessage());
    }
}
Also used : Processor(aQute.bnd.osgi.Processor) HashMap(java.util.HashMap) Workspace(aQute.bnd.build.Workspace)

Example 95 with Processor

use of aQute.bnd.osgi.Processor in project bnd by bndtools.

the class PomRepositoryTest method testBndPomRepoFile.

public void testBndPomRepoFile() throws Exception {
    BndPomRepository bpr = new BndPomRepository();
    Workspace w = Workspace.createStandaloneWorkspace(new Processor(), tmp.toURI());
    w.setBase(tmp);
    bpr.setRegistry(w);
    Map<String, String> config = new HashMap<>();
    config.put("pom", "testdata/pomrepo/simple.xml");
    config.put("snapshotUrls", "https://repo1.maven.org/maven2/");
    config.put("releaseUrls", "https://repo1.maven.org/maven2/");
    config.put("name", "test");
    bpr.setProperties(config);
    List<String> list = bpr.list(null);
    assertNotNull(list);
    assertEquals(1, list.size());
}
Also used : Processor(aQute.bnd.osgi.Processor) HashMap(java.util.HashMap) Workspace(aQute.bnd.build.Workspace)

Aggregations

Processor (aQute.bnd.osgi.Processor)185 HashMap (java.util.HashMap)43 File (java.io.File)37 Macro (aQute.bnd.osgi.Macro)29 Workspace (aQute.bnd.build.Workspace)27 Jar (aQute.bnd.osgi.Jar)17 HttpClient (aQute.bnd.http.HttpClient)14 Baseline (aQute.bnd.differ.Baseline)12 DiffPluginImpl (aQute.bnd.differ.DiffPluginImpl)12 BundleInfo (aQute.bnd.differ.Baseline.BundleInfo)10 IOException (java.io.IOException)10 Resource (org.osgi.resource.Resource)10 Info (aQute.bnd.differ.Baseline.Info)8 Version (aQute.bnd.version.Version)8 ArrayList (java.util.ArrayList)8 List (java.util.List)7 ProgressPlugin (aQute.bnd.service.progress.ProgressPlugin)6 Collection (java.util.Collection)6 Properties (java.util.Properties)6 Parameters (aQute.bnd.header.Parameters)5