Search in sources :

Example 1 with MockBundleResource

use of org.apache.sling.installer.core.impl.MockBundleResource in project sling by apache.

the class BundleTaskCreatorTest method testBundleUpgradeSnapshot.

@Test
public void testBundleUpgradeSnapshot() throws IOException {
    // Need to use OSGi-compliant version number, in bundles
    // bnd and other tools generate correct numbers.
    final String v = "2.0.7.SNAPSHOT";
    final TaskResource[] r = { new MockBundleResource(SN, v) };
    {
        final MockBundleTaskCreator c = new MockBundleTaskCreator();
        c.addBundleInfo(SN, v, Bundle.ACTIVE);
        final SortedSet<InstallTask> s = getTasks(r, c);
        assertEquals("Expected one task", 1, s.size());
        assertTrue("Expected a BundleUpdateTask", s.first() instanceof BundleUpdateTask);
    }
}
Also used : TaskResource(org.apache.sling.installer.api.tasks.TaskResource) MockBundleResource(org.apache.sling.installer.core.impl.MockBundleResource) SortedSet(java.util.SortedSet) Test(org.junit.Test)

Example 2 with MockBundleResource

use of org.apache.sling.installer.core.impl.MockBundleResource in project sling by apache.

the class BundleTaskCreatorTest method testDowngradeOfRemovedResource.

@Test
public void testDowngradeOfRemovedResource() throws IOException {
    final MockBundleResource[] r = { new MockBundleResource(SN, "1.0.0"), new MockBundleResource(SN, "1.1.0") };
    // Simulate V1.1 installed but resource is gone -> downgrade to 1.0
    r[1].setState(ResourceState.UNINSTALL);
    {
        final MockBundleTaskCreator c = new MockBundleTaskCreator();
        c.addBundleInfo(SN, "1.1.0", Bundle.ACTIVE);
        final SortedSet<InstallTask> s = getTasks(r, c);
        assertEquals("Expected two tasks", 2, s.size());
        final Iterator<InstallTask> i = s.iterator();
        final InstallTask first = i.next();
        assertTrue("Expected a ChangeStateTask:" + first, first instanceof ChangeStateTask);
        final InstallTask second = i.next();
        assertTrue("Expected a BundleRemoveTask", second instanceof BundleRemoveTask);
        final BundleRemoveTask t = (BundleRemoveTask) second;
        assertEquals("Remove should be to V1.1", r[1].getEntityId(), t.getResource().getEntityId());
    }
}
Also used : MockBundleResource(org.apache.sling.installer.core.impl.MockBundleResource) Iterator(java.util.Iterator) ChangeStateTask(org.apache.sling.installer.api.tasks.ChangeStateTask) SortedSet(java.util.SortedSet) InstallTask(org.apache.sling.installer.api.tasks.InstallTask) Test(org.junit.Test)

Example 3 with MockBundleResource

use of org.apache.sling.installer.core.impl.MockBundleResource in project sling by apache.

the class BundleTaskCreatorTest method testSingleBundleNew.

@Test
public void testSingleBundleNew() throws IOException {
    final TaskResource[] r = { new MockBundleResource(SN, "1.0") };
    final MockBundleTaskCreator c = new MockBundleTaskCreator();
    final SortedSet<InstallTask> s = getTasks(r, c);
    assertEquals("Expected one task", 1, s.size());
    assertTrue("Expected a BundleInstallTask", s.first() instanceof BundleInstallTask);
}
Also used : TaskResource(org.apache.sling.installer.api.tasks.TaskResource) MockBundleResource(org.apache.sling.installer.core.impl.MockBundleResource) InstallTask(org.apache.sling.installer.api.tasks.InstallTask) Test(org.junit.Test)

Example 4 with MockBundleResource

use of org.apache.sling.installer.core.impl.MockBundleResource in project sling by apache.

the class BundleTaskCreatorTest method testBundleRemoveSingle.

@Test
public void testBundleRemoveSingle() throws IOException {
    final String version = "1.0";
    final MockBundleResource[] r = { new MockBundleResource(SN, version) };
    r[0].setState(ResourceState.UNINSTALL);
    {
        final MockBundleTaskCreator c = new MockBundleTaskCreator();
        c.addBundleInfo(SN, "1.0", Bundle.ACTIVE);
        final SortedSet<InstallTask> s = getTasks(r, c);
        assertEquals("Expected one task, remove bundle", 1, s.size());
        assertTrue("Expected a BundleRemoveTask", s.first() instanceof BundleRemoveTask);
    }
}
Also used : MockBundleResource(org.apache.sling.installer.core.impl.MockBundleResource) SortedSet(java.util.SortedSet) Test(org.junit.Test)

Aggregations

MockBundleResource (org.apache.sling.installer.core.impl.MockBundleResource)4 Test (org.junit.Test)4 SortedSet (java.util.SortedSet)3 InstallTask (org.apache.sling.installer.api.tasks.InstallTask)2 TaskResource (org.apache.sling.installer.api.tasks.TaskResource)2 Iterator (java.util.Iterator)1 ChangeStateTask (org.apache.sling.installer.api.tasks.ChangeStateTask)1