Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/FeaturesActionTest.java')
-rw-r--r--bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/FeaturesActionTest.java258
1 files changed, 145 insertions, 113 deletions
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/FeaturesActionTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/FeaturesActionTest.java
index bae3a460e..279660892 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/FeaturesActionTest.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/FeaturesActionTest.java
@@ -15,10 +15,10 @@
******************************************************************************/
package org.eclipse.equinox.p2.tests.publisher.actions;
-import static org.easymock.EasyMock.and;
-import static org.easymock.EasyMock.capture;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.isA;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import java.io.File;
import java.io.IOException;
@@ -26,10 +26,9 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.zip.ZipInputStream;
-import org.easymock.Capture;
-import org.easymock.EasyMock;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.equinox.internal.p2.metadata.ArtifactKey;
@@ -62,6 +61,8 @@ import org.eclipse.equinox.p2.tests.TestData;
import org.eclipse.equinox.p2.tests.TestMetadataRepository;
import org.eclipse.equinox.p2.tests.publisher.TestArtifactRepository;
import org.eclipse.equinox.spi.p2.publisher.PublisherHelper;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mockito;
public class FeaturesActionTest extends ActionTest {
@@ -75,12 +76,12 @@ public class FeaturesActionTest extends ActionTest {
private Version barVersion = Version.create("1.1.1"); //$NON-NLS-1$
private String BAR = "bar"; //$NON-NLS-1$
private String FOO = "foo"; //$NON-NLS-1$
- private Capture<ITouchpointAdvice> tpAdvice;
+ private ArgumentCaptor<ITouchpointAdvice> capture = ArgumentCaptor.forClass(ITouchpointAdvice.class);
@Override
public void setUp() throws Exception {
- testAction = new FeaturesAction(new File[] {root});
- tpAdvice = Capture.newInstance();
+ super.setUp();
+ testAction = Mockito.spy(new FeaturesAction(new File[] { root }));
setupPublisherInfo();
setupPublisherResult();
}
@@ -90,37 +91,41 @@ public class FeaturesActionTest extends ActionTest {
*/
public void testSimple() throws Exception {
testAction.perform(publisherInfo, publisherResult, new NullProgressMonitor());
+ verify(publisherInfo, Mockito.atLeastOnce()).addAdvice(capture.capture());
verifyRepositoryContents();
debug("Completed FeaturesAction."); //$NON-NLS-1$
}
public void testFeaturePatch() throws Exception {
File testFolder = getTestFolder("FeaturesAction.testFilters");
- StringBuffer buffer = new StringBuffer();
+ StringBuilder buffer = new StringBuilder();
buffer.append("<feature id=\"test.feature\" version=\"1.0.0\" > \n");
buffer.append(" <requires> \n");
- buffer.append(" <import feature=\"org.foo\" version=\"[1.0.0,2.0.0)\" match=\"versionRange\" patch=\"true\"/> \n");
+ buffer.append(
+ " <import feature=\"org.foo\" version=\"[1.0.0,2.0.0)\" match=\"versionRange\" patch=\"true\"/> \n");
buffer.append(" </requires> \n");
buffer.append("</feature> \n");
File featureXML = new File(testFolder, "feature.xml");
writeBuffer(featureXML, buffer);
publisherInfo = new PublisherInfo();
- FeaturesAction action = new FeaturesAction(new File[] {testFolder});
+ FeaturesAction action = new FeaturesAction(new File[] { testFolder });
action.perform(publisherInfo, publisherResult, new NullProgressMonitor());
- IInstallableUnitPatch iu = (IInstallableUnitPatch) publisherResult.getIU("test.feature.feature.group", Version.parseVersion("1.0.0"), null);
+ IInstallableUnitPatch iu = (IInstallableUnitPatch) publisherResult.getIU("test.feature.feature.group",
+ Version.parseVersion("1.0.0"), null);
IRequirement[][] applicabilityScope = iu.getApplicabilityScope();
assertEquals(1, applicabilityScope.length);
IRequiredCapability require = (IRequiredCapability) applicabilityScope[0][0];
- IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.foo.feature.group", VersionRange.create("[1.0.0, 2.0.0)"), null, false, false, true);
+ IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID,
+ "org.foo.feature.group", VersionRange.create("[1.0.0, 2.0.0)"), null, false, false, true);
verifyRequirement(Collections.singleton(expected), require);
}
public void testMatchRange() throws Exception {
File testFolder = getTestFolder("FeaturesAction.testFilters");
- StringBuffer buffer = new StringBuffer();
+ StringBuilder buffer = new StringBuilder();
buffer.append("<feature id=\"test.feature\" version=\"1.0.0\" > \n");
buffer.append(" <requires> \n");
buffer.append(" <import plugin=\"org.plug\" version=\"[1.0.0,2.0.0)\" match=\"versionRange\" /> \n");
@@ -131,7 +136,7 @@ public class FeaturesActionTest extends ActionTest {
writeBuffer(featureXML, buffer);
publisherInfo = new PublisherInfo();
- FeaturesAction action = new FeaturesAction(new File[] {testFolder});
+ FeaturesAction action = new FeaturesAction(new File[] { testFolder });
action.perform(publisherInfo, publisherResult, new NullProgressMonitor());
IInstallableUnit iu = publisherResult.getIU("test.feature.feature.group", Version.parseVersion("1.0.0"), null);
@@ -141,10 +146,12 @@ public class FeaturesActionTest extends ActionTest {
String requireName = ((IRequiredCapability) require).getName();
if (requireName.equals("org.foo.feature.group")) {
- IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.foo.feature.group", VersionRange.create("[1.0.0, 2.0.0)"), null, false, false, true);
+ IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID,
+ "org.foo.feature.group", VersionRange.create("[1.0.0, 2.0.0)"), null, false, false, true);
verifyRequirement(Collections.singleton(expected), require);
} else if (requireName.equals("org.plug")) {
- IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.plug", VersionRange.create("[1.0.0, 2.0.0)"), null, false, false, true);
+ IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.plug",
+ VersionRange.create("[1.0.0, 2.0.0)"), null, false, false, true);
verifyRequirement(Collections.singleton(expected), require);
}
}
@@ -152,7 +159,7 @@ public class FeaturesActionTest extends ActionTest {
public void testMatchGreaterOrEqual() throws Exception {
File testFolder = getTestFolder("FeaturesAction.testFilters");
- StringBuffer buffer = new StringBuffer();
+ StringBuilder buffer = new StringBuilder();
buffer.append("<feature id=\"test.feature\" version=\"1.0.0\" > \n");
buffer.append(" <requires> \n");
buffer.append(" <import plugin=\"org.plug\" version=\"1.0.0\" match=\"greaterOrEqual\" /> \n");
@@ -163,7 +170,7 @@ public class FeaturesActionTest extends ActionTest {
writeBuffer(featureXML, buffer);
publisherInfo = new PublisherInfo();
- FeaturesAction action = new FeaturesAction(new File[] {testFolder});
+ FeaturesAction action = new FeaturesAction(new File[] { testFolder });
action.perform(publisherInfo, publisherResult, new NullProgressMonitor());
IInstallableUnit iu = publisherResult.getIU("test.feature.feature.group", Version.parseVersion("1.0.0"), null);
@@ -173,10 +180,12 @@ public class FeaturesActionTest extends ActionTest {
String requireName = ((IRequiredCapability) require).getName();
if (requireName.equals("org.foo.feature.group")) {
- IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.foo.feature.group", VersionRange.create("1.0.0"), null, false, false, true);
+ IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID,
+ "org.foo.feature.group", VersionRange.create("1.0.0"), null, false, false, true);
verifyRequirement(Collections.singleton(expected), require);
} else if (requireName.equals("org.plug")) {
- IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.plug", VersionRange.create("1.0.0"), null, false, false, true);
+ IRequirement expected = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, "org.plug",
+ VersionRange.create("1.0.0"), null, false, false, true);
verifyRequirement(Collections.singleton(expected), require);
}
}
@@ -184,7 +193,7 @@ public class FeaturesActionTest extends ActionTest {
public void testFilters() throws Exception {
File testFolder = getTestFolder("FeaturesAction.testFilters");
- StringBuffer buffer = new StringBuffer();
+ StringBuilder buffer = new StringBuilder();
buffer.append("<feature id=\"test.feature\" version=\"1.0.0\" > \n");
buffer.append(" <includes id=\"org.foo\" version=\"1.0.0\" filter=\"(osgi.os=win32)\"/> \n");
buffer.append(" <plugin id=\"org.plug\" version=\"1.0.0\" filter=\"(my.prop=foo)\" os=\"win32\" /> \n");
@@ -197,7 +206,7 @@ public class FeaturesActionTest extends ActionTest {
writeBuffer(featureXML, buffer);
publisherInfo = new PublisherInfo();
- FeaturesAction action = new FeaturesAction(new File[] {testFolder});
+ FeaturesAction action = new FeaturesAction(new File[] { testFolder });
action.perform(publisherInfo, publisherResult, new NullProgressMonitor());
IInstallableUnit iu = publisherResult.getIU("test.feature.feature.group", Version.parseVersion("1.0.0"), null);
@@ -207,7 +216,8 @@ public class FeaturesActionTest extends ActionTest {
if (((IRequiredCapability) require).getName().equals("org.foo.feature.group")) {
assertEquals(ExpressionUtil.parseLDAP("(osgi.os=win32)"), require.getFilter().getParameters()[0]);
} else if (((IRequiredCapability) require).getName().equals("org.plug")) {
- assertEquals(ExpressionUtil.parseLDAP("(&(my.prop=foo)(osgi.os=win32))"), require.getFilter().getParameters()[0]);
+ assertEquals(ExpressionUtil.parseLDAP("(&(my.prop=foo)(osgi.os=win32))"),
+ require.getFilter().getParameters()[0]);
} else if (((IRequiredCapability) require).getName().equals("org.plug2")) {
assertEquals(ExpressionUtil.parseLDAP("(my.prop=foo)"), require.getFilter().getParameters()[0]);
} else if (((IRequiredCapability) require).getName().equals("org.foo2.feature.group")) {
@@ -222,151 +232,173 @@ public class FeaturesActionTest extends ActionTest {
}
private void verifyMetadata() {
- //{foo.feature.jar=[foo.feature.jar 1.0.0], bar.feature.jar=[bar.feature.jar 1.1.1], foo.feature.group=[foo.feature.group 1.0.0], bar.feature.group=[bar.feature.group 1.1.1]}
- ArrayList<IInstallableUnit> fooIUs = new ArrayList<>(publisherResult.getIUs("foo.feature.jar", IPublisherResult.NON_ROOT)); //$NON-NLS-1$
- assertTrue(fooIUs.size() == 1);
+ // {foo.feature.jar=[foo.feature.jar 1.0.0], bar.feature.jar=[bar.feature.jar
+ // 1.1.1], foo.feature.group=[foo.feature.group 1.0.0],
+ // bar.feature.group=[bar.feature.group 1.1.1]}
+ ArrayList<IInstallableUnit> fooIUs = new ArrayList<>(
+ publisherResult.getIUs("foo.feature.jar", IPublisherResult.NON_ROOT)); //$NON-NLS-1$
+ assertEquals(1, fooIUs.size());
IInstallableUnit foo = fooIUs.get(0);
assertTrue(foo.getId().equalsIgnoreCase("foo.feature.jar")); //$NON-NLS-1$
- assertTrue(foo.getVersion().equals(fooVersion));
+ assertEquals(fooVersion, foo.getVersion());
assertEquals("Foo Feature", foo.getProperty(IInstallableUnit.PROP_NAME));
assertEquals("Foo Description", foo.getProperty(IInstallableUnit.PROP_DESCRIPTION));
assertEquals("Foo License", foo.getLicenses().iterator().next().getBody());
assertEquals("Foo Copyright", foo.getCopyright().getBody());
- assertTrue(foo.getProperty("key1").equals("value1")); //$NON-NLS-1$ //$NON-NLS-2$
- assertTrue(foo.getProperty("key2").equals("value2")); //$NON-NLS-1$//$NON-NLS-2$
- assertTrue(foo.getArtifacts().iterator().next().equals(FOO_KEY));
- assertEquals(foo.getFilter().getParameters()[0], ExpressionUtil.parseLDAP("(org.eclipse.update.install.features=true)")); //$NON-NLS-1$
+ assertEquals("value1", foo.getProperty("key1")); //$NON-NLS-1$ //$NON-NLS-2$
+ assertEquals("value2", foo.getProperty("key2")); //$NON-NLS-1$//$NON-NLS-2$
+ assertEquals(FOO_KEY, foo.getArtifacts().iterator().next());
+ assertEquals(foo.getFilter().getParameters()[0],
+ ExpressionUtil.parseLDAP("(org.eclipse.update.install.features=true)")); //$NON-NLS-1$
- //check touchpointType
+ // check touchpointType
assertTrue(foo.getTouchpointType().getId().equalsIgnoreCase("org.eclipse.equinox.p2.osgi")); //$NON-NLS-1$
- assertTrue(foo.getTouchpointType().getVersion().equals(fooVersion));
+ assertEquals(fooVersion, foo.getTouchpointType().getVersion());
- //zipped=true
+ // zipped=true
Collection<ITouchpointData> tpData = foo.getTouchpointData();
String fooValue = tpData.iterator().next().getInstructions().get("zipped").getBody(); //$NON-NLS-1$
assertTrue(fooValue.equalsIgnoreCase("true")); //$NON-NLS-1$
Collection<IRequirement> fooRequiredCapabilities = foo.getRequirements();
- assertTrue(fooRequiredCapabilities.size() == 0);
+ assertTrue(fooRequiredCapabilities.isEmpty());
Collection<IProvidedCapability> fooProvidedCapabilities = foo.getProvidedCapabilities();
- verifyProvidedCapability(fooProvidedCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "foo.feature.jar", fooVersion); //$NON-NLS-1$
- verifyProvidedCapability(fooProvidedCapabilities, PublisherHelper.NAMESPACE_ECLIPSE_TYPE, "feature", fooVersion); //$NON-NLS-1$
+ verifyProvidedCapability(fooProvidedCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "foo.feature.jar", //$NON-NLS-1$
+ fooVersion);
+ verifyProvidedCapability(fooProvidedCapabilities, PublisherHelper.NAMESPACE_ECLIPSE_TYPE, "feature", //$NON-NLS-1$
+ fooVersion);
verifyProvidedCapability(fooProvidedCapabilities, "org.eclipse.update.feature", FOO, fooVersion); //$NON-NLS-1$
- assertTrue(fooProvidedCapabilities.size() == 3);
+ assertEquals(3, fooProvidedCapabilities.size());
- //feature group IU for foo
+ // feature group IU for foo
fooIUs = new ArrayList<>(publisherResult.getIUs("foo.feature.group", IPublisherResult.ROOT)); //$NON-NLS-1$
- assertTrue(fooIUs.size() == 1);
+ assertEquals(1, fooIUs.size());
IInstallableUnit fooGroup = fooIUs.get(0);
- tpData = fooGroup.getTouchpointData();
- assertEquals(1, tpData.size());
- ITouchpointInstruction instruction = tpData.iterator().next().getInstruction("install");
+ ITouchpointAdvice tData = capture.getValue();
+ ITouchpointInstruction instruction = tData.getTouchpointData(NO_TP_DATA).getInstruction("install");
assertNotNull(instruction);
- assertEquals("ln(targetDir:@artifact,linkTarget:foo/lib.1.so,linkName:lib.so);chmod(targetDir:@artifact,targetFile:lib/lib.so,permissions:755);", instruction.getBody());
+ assertEquals(
+ "ln(targetDir:@artifact,linkTarget:foo/lib.1.so,linkName:lib.so);chmod(targetDir:@artifact,targetFile:lib/lib.so,permissions:755);",
+ instruction.getBody());
assertNull(fooGroup.getFilter());
- /*verify bar*/
- ArrayList<IInstallableUnit> barIUs = new ArrayList<>(publisherResult.getIUs("bar.feature.jar", IPublisherResult.NON_ROOT)); //$NON-NLS-1$
- assertTrue(barIUs.size() == 1);
+ /* verify bar */
+ ArrayList<IInstallableUnit> barIUs = new ArrayList<>(
+ publisherResult.getIUs("bar.feature.jar", IPublisherResult.NON_ROOT)); //$NON-NLS-1$
+ assertEquals(1, barIUs.size());
IInstallableUnit bar = barIUs.get(0);
- assertTrue(bar.getId().equals("bar.feature.jar")); //$NON-NLS-1$
- assertTrue(bar.getVersion().equals(barVersion));
- assertTrue(bar.getProperty("key1").equals("value1")); //$NON-NLS-1$//$NON-NLS-2$
- assertTrue(bar.getProperty("key2").equals("value2")); //$NON-NLS-1$//$NON-NLS-2$
+ assertEquals("bar.feature.jar", bar.getId()); //$NON-NLS-1$
+ assertEquals(barVersion, bar.getVersion());
+ assertEquals("value1", bar.getProperty("key1")); //$NON-NLS-1$//$NON-NLS-2$
+ assertEquals("value2", bar.getProperty("key2")); //$NON-NLS-1$//$NON-NLS-2$
assertTrue(bar.getProperties().containsKey("org.eclipse.update.installHandler")); //$NON-NLS-1$
assertTrue(bar.getProperties().containsValue("handler=bar handler")); //$NON-NLS-1$
- assertTrue(bar.getArtifacts().iterator().next().equals(BAR_KEY));
- assertEquals(bar.getFilter().getParameters()[0], ExpressionUtil.parseLDAP("(org.eclipse.update.install.features=true)")); //$NON-NLS-1$
+ assertEquals(BAR_KEY, bar.getArtifacts().iterator().next());
+ assertEquals(bar.getFilter().getParameters()[0],
+ ExpressionUtil.parseLDAP("(org.eclipse.update.install.features=true)")); //$NON-NLS-1$
assertTrue(bar.isSingleton());
barIUs = new ArrayList<>(publisherResult.getIUs("bar.feature.group", IPublisherResult.ROOT)); //$NON-NLS-1$
- assertTrue(fooIUs.size() == 1);
+ assertEquals(1, fooIUs.size());
IInstallableUnit barGroup = barIUs.get(0);
Collection<IRequirement> barRequiredCapabilities = barGroup.getRequirements();
- //contains(barRequiredCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "bar_root", new VersionRange(barVersion, true, barVersion, true), null, false /*multiple*/, false /*optional*/); //$NON-NLS-1$//$NON-NLS-2$
- verifyRequirement(barRequiredCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "bar.feature.jar", new VersionRange(barVersion, true, barVersion, true), "(org.eclipse.update.install.features=true)", 1, 1, true); //$NON-NLS-1$//$NON-NLS-2$
- verifyRequirement(barRequiredCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "org.bar.feature.feature.group", VersionRange.emptyRange, "(&(|(osgi.nl=de)(osgi.nl=en)(osgi.nl=fr)))", 1, 1, true); //$NON-NLS-1$//$NON-NLS-2$
- assertEquals(barGroup.getFilter().getParameters()[0], ExpressionUtil.parseLDAP("(&(|(osgi.os=macosx)(osgi.os=win32))(|(osgi.ws=carbon)(osgi.ws=win32))(|(osgi.arch=ppc)(osgi.arch=x86))(osgi.nl=en))"));
-
- //check zipped=true in touchpointData
+ // contains(barRequiredCapabilities, IInstallableUnit.NAMESPACE_IU_ID,
+ // "bar_root", new VersionRange(barVersion, true, barVersion, true), null, false
+ // /*multiple*/, false /*optional*/); //$NON-NLS-1$//$NON-NLS-2$
+ verifyRequirement(barRequiredCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "bar.feature.jar", //$NON-NLS-1$
+ new VersionRange(barVersion, true, barVersion, true), "(org.eclipse.update.install.features=true)", 1, //$NON-NLS-1$
+ 1, true);
+ verifyRequirement(barRequiredCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "org.bar.feature.feature.group", //$NON-NLS-1$
+ VersionRange.emptyRange, "(&(|(osgi.nl=de)(osgi.nl=en)(osgi.nl=fr)))", 1, 1, true); //$NON-NLS-1$
+ assertEquals(barGroup.getFilter().getParameters()[0], ExpressionUtil.parseLDAP(
+ "(&(|(osgi.os=macosx)(osgi.os=win32))(|(osgi.ws=carbon)(osgi.ws=win32))(|(osgi.arch=ppc)(osgi.arch=x86))(osgi.nl=en))"));
+
+ // check zipped=true in touchpointData
String barValue = bar.getTouchpointData().iterator().next().getInstructions().get("zipped").getBody(); //$NON-NLS-1$
assertTrue(barValue.equalsIgnoreCase("true")); //$NON-NLS-1$
- //check touchpointType
+ // check touchpointType
assertTrue(bar.getTouchpointType().getId().equalsIgnoreCase("org.eclipse.equinox.p2.osgi")); //$NON-NLS-1$
- assertTrue(bar.getTouchpointType().getVersion().equals(fooVersion));
- //String namespace, String name, VersionRange range, String filter, boolean optional, boolean multiple, boolean greedy)
+ assertEquals(fooVersion, bar.getTouchpointType().getVersion());
+ // String namespace, String name, VersionRange range, String filter, boolean
+ // optional, boolean multiple, boolean greedy)
barRequiredCapabilities = bar.getRequirements();
- assertTrue(barRequiredCapabilities.size() == 0);
+ assertTrue(barRequiredCapabilities.isEmpty());
Collection<IProvidedCapability> barProvidedCapabilities = bar.getProvidedCapabilities();
- verifyProvidedCapability(barProvidedCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "bar.feature.jar", barVersion); //$NON-NLS-1$
- verifyProvidedCapability(barProvidedCapabilities, PublisherHelper.NAMESPACE_ECLIPSE_TYPE, "feature", fooVersion); //$NON-NLS-1$
+ verifyProvidedCapability(barProvidedCapabilities, IInstallableUnit.NAMESPACE_IU_ID, "bar.feature.jar", //$NON-NLS-1$
+ barVersion);
+ verifyProvidedCapability(barProvidedCapabilities, PublisherHelper.NAMESPACE_ECLIPSE_TYPE, "feature", //$NON-NLS-1$
+ fooVersion);
verifyProvidedCapability(barProvidedCapabilities, "org.eclipse.update.feature", BAR, barVersion); //$NON-NLS-1$
- assertTrue(barProvidedCapabilities.size() == 3);
+ assertEquals(3, barProvidedCapabilities.size());
}
private void verifyArtifacts() throws IOException {
ZipInputStream actualStream = artifactRepository.getZipInputStream(FOO_KEY);
- Map<String, Object[]> expected = getFileMap(new HashMap<>(), new File[] {new File(root, FOO)}, new Path(new File(root, FOO).getAbsolutePath()));
+ Map<String, Object[]> expected = getFileMap(new HashMap<>(), new File[] { new File(root, FOO) },
+ new Path(new File(root, FOO).getAbsolutePath()));
TestData.assertContains(expected, actualStream, true);
- expected = getFileMap(new HashMap<>(), new File[] {new File(root, BAR)}, new Path(new File(root, BAR).getAbsolutePath()));
+ expected = getFileMap(new HashMap<>(), new File[] { new File(root, BAR) },
+ new Path(new File(root, BAR).getAbsolutePath()));
actualStream = artifactRepository.getZipInputStream(BAR_KEY);
TestData.assertContains(expected, actualStream, true);
}
@Override
protected void insertPublisherInfoBehavior() {
- //setup metadataRepository with barIU
- metadataRepository = new TestMetadataRepository(getAgent(), new IInstallableUnit[] {mockIU(BAR, null)});
-
- ArrayList<IPropertyAdvice> adviceCollection = fillAdvice(new ArrayList<>());
- expect(publisherInfo.getAdvice(null, false, "bar.feature.jar", barVersion, IPropertyAdvice.class)).andReturn(adviceCollection).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar", barVersion, IPropertyAdvice.class)).andReturn(adviceCollection).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar", barVersion, IFeatureRootAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, IPropertyAdvice.class)).andReturn(adviceCollection).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, ITouchpointAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, ICapabilityAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion,
- IAdditionalInstallableUnitAdvice.class)).andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo.feature.jar", fooVersion, IPropertyAdvice.class)).andReturn(adviceCollection).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, IUpdateDescriptorAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo", fooVersion, IPropertyAdvice.class)).andReturn(adviceCollection).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo", fooVersion, IFeatureRootAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, IPropertyAdvice.class)).andReturn(adviceCollection).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, ICapabilityAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion,
- IAdditionalInstallableUnitAdvice.class)).andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, IUpdateDescriptorAdvice.class))
- .andReturn(Collections.emptyList()).anyTimes();
- expect(publisherInfo.getArtifactOptions()).andReturn(IPublisherInfo.A_INDEX | IPublisherInfo.A_OVERWRITE | IPublisherInfo.A_PUBLISH).anyTimes();
- expect(publisherInfo.getArtifactRepository()).andReturn(artifactRepository).anyTimes();
- expect(publisherInfo.getMetadataRepository()).andReturn(metadataRepository).anyTimes();
- expect(publisherInfo.getContextMetadataRepository()).andReturn(null).anyTimes();
-
- //capture any touchpoint advice, and return the captured advice when the action asks for it
- publisherInfo.addAdvice(and(isA(ITouchpointAdvice.class), capture(tpAdvice)));
- EasyMock.expectLastCall().anyTimes();
- expect(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, ITouchpointAdvice.class)).andReturn(new CaptureList<>(tpAdvice)).anyTimes();
+ // setup metadataRepository with barIU
+ metadataRepository = new TestMetadataRepository(getAgent(), new IInstallableUnit[] { mockIU(BAR, null) });
+
+ List<IPropertyAdvice> adviceCollection = fillAdvice(new ArrayList<>());
+ when(publisherInfo.getAdvice(null, false, "bar.feature.jar", barVersion, IPropertyAdvice.class))
+ .thenReturn(adviceCollection);
+ when(publisherInfo.getAdvice(null, false, "bar", barVersion, IPropertyAdvice.class))
+ .thenReturn(adviceCollection);
+ when(publisherInfo.getAdvice(null, false, "bar", barVersion, IFeatureRootAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, IPropertyAdvice.class))
+ .thenReturn(adviceCollection);
+ when(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, ITouchpointAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, ICapabilityAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion,
+ IAdditionalInstallableUnitAdvice.class)).thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "foo.feature.jar", fooVersion, IPropertyAdvice.class))
+ .thenReturn(adviceCollection);
+ when(publisherInfo.getAdvice(null, false, "bar.feature.group", barVersion, IUpdateDescriptorAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "foo", fooVersion, IPropertyAdvice.class))
+ .thenReturn(adviceCollection);
+ when(publisherInfo.getAdvice(null, false, "foo", fooVersion, IFeatureRootAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, IPropertyAdvice.class))
+ .thenReturn(adviceCollection);
+ when(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, ICapabilityAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion,
+ IAdditionalInstallableUnitAdvice.class)).thenReturn(Collections.emptyList());
+ when(publisherInfo.getAdvice(null, false, "foo.feature.group", fooVersion, IUpdateDescriptorAdvice.class))
+ .thenReturn(Collections.emptyList());
+ when(publisherInfo.getArtifactOptions())
+ .thenReturn(IPublisherInfo.A_INDEX | IPublisherInfo.A_OVERWRITE | IPublisherInfo.A_PUBLISH);
+ when(publisherInfo.getArtifactRepository()).thenReturn(artifactRepository);
+ when(publisherInfo.getMetadataRepository()).thenReturn(metadataRepository);
+ when(publisherInfo.getContextMetadataRepository()).thenReturn(null);
}
- private ArrayList<IPropertyAdvice> fillAdvice(ArrayList<IPropertyAdvice> adviceCollection) {
+ private List<IPropertyAdvice> fillAdvice(ArrayList<IPropertyAdvice> adviceCollection) {
Map<String, String> prop = new HashMap<>();
prop.put("key1", "value1"); //$NON-NLS-1$//$NON-NLS-2$
prop.put("key2", "value2"); //$NON-NLS-1$//$NON-NLS-2$
- IPropertyAdvice propertyAdvice = EasyMock.createMock(IPropertyAdvice.class);
- expect(propertyAdvice.getInstallableUnitProperties((InstallableUnitDescription) EasyMock.anyObject())).andReturn(prop).anyTimes();
- expect(propertyAdvice.getArtifactProperties((IInstallableUnit) EasyMock.anyObject(), (IArtifactDescriptor) EasyMock.anyObject())).andReturn(null).anyTimes();
- EasyMock.replay(propertyAdvice);
+ IPropertyAdvice propertyAdvice = mock(IPropertyAdvice.class);
+ when(propertyAdvice.getInstallableUnitProperties(any(InstallableUnitDescription.class))).thenReturn(prop);
+ when(propertyAdvice.getArtifactProperties(any(IInstallableUnit.class), any(IArtifactDescriptor.class)))
+ .thenReturn(null);
adviceCollection.add(propertyAdvice);
return adviceCollection;
}

Back to the top