private void verifyLauncherArgs(IInstallableUnit iu) { Collection<ITouchpointData> touchpointData = iu.getTouchpointData(); assertEquals(1, touchpointData.size()); ITouchpointData data = touchpointData.iterator().next(); ITouchpointInstruction instruction = data.getInstruction("configure"); // $NON-NLS-1$ String body = instruction.getBody(); assertTrue( "arg -foo bar", body.indexOf("addProgramArg(programArg:-foo bar);") > -1); // $NON-NLS-1$ //$NON-NLS-2$ assertTrue( "vmarg -agentlib", body.indexOf( "addJvmArg(jvmArg:-agentlib${#58}jdwp=transport=dt_socket${#44}server=y${#44}suspend=n${#44}address=8272);") > -1); //$NON-NLS-1$ //$NON-NLS-2$ assertTrue( "arg -product com,ma", body.indexOf("addProgramArg(programArg:-product);addProgramArg(programArg:com${#44}ma);") > -1); //$NON-NLS-1$ //$NON-NLS-2$ }
private void verifyConfigProperties(IInstallableUnit iu) { Collection<ITouchpointData> touchpointData = iu.getTouchpointData(); assertEquals(1, touchpointData.size()); ITouchpointData data = touchpointData.iterator().next(); ITouchpointInstruction instruction = data.getInstruction("configure"); // $NON-NLS-1$ String body = instruction.getBody(); assertTrue( "eclipse.product", body.indexOf( "setProgramProperty(propName:eclipse.product,propValue:org.eclipse.platform.ide);") > -1); //$NON-NLS-1$ //$NON-NLS-2$ assertTrue( "eclipse.buildId", body.indexOf("setProgramProperty(propName:eclipse.buildId,propValue:TEST-ID);") > -1); //$NON-NLS-1$ //$NON-NLS-2$ assertTrue( "my.property", body.indexOf( "setProgramProperty(propName:my.property,propValue:${#123}a${#44}b${#58}c${#59}${#36}d${#125});") > -1); //$NON-NLS-1$ //$NON-NLS-2$ }
private void verifyBundleCU() { final String bundleCUId = flavor + configSpec + ORG_ECLIPSE_CORE_COMMANDS; IQueryResult queryResult = publisherResult.query(QueryUtil.createIUQuery(bundleCUId), new NullProgressMonitor()); assertEquals(1, queryResultSize(queryResult)); IInstallableUnitFragment fragment = (IInstallableUnitFragment) queryResult.iterator().next(); assertNull(fragment.getFilter()); // no filter if config spec is ANY assertTrue(fragment.getVersion().equals(version)); assertFalse(fragment.isSingleton()); final Collection<IProvidedCapability> providedCapabilities = fragment.getProvidedCapabilities(); verifyProvidedCapability( providedCapabilities, IInstallableUnit.NAMESPACE_IU_ID, bundleCUId, version); verifyProvidedCapability( providedCapabilities, "org.eclipse.equinox.p2.flavor", flavor + configSpec, version); //$NON-NLS-1$ assertEquals(2, providedCapabilities.size()); assertEquals(0, fragment.getRequirements().size()); final Collection<IRequirement> hostRequirements = fragment.getHost(); verifyRequiredCapability( hostRequirements, "osgi.bundle", ORG_ECLIPSE_CORE_COMMANDS, new VersionRange(BUNDLE_VERSION)); // $NON-NLS-1$ verifyRequiredCapability( hostRequirements, "org.eclipse.equinox.p2.eclipse.type", "bundle", new VersionRange(Version.create("1.0.0"), true, Version.create("2.0.0"), false), 1, 1, false); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ assertTrue(hostRequirements.size() == 2); final Collection<ITouchpointData> touchpointData = fragment.getTouchpointData(); assertEquals(1, touchpointData.size()); ITouchpointData data = touchpointData.iterator().next(); ITouchpointInstruction instruction = data.getInstruction("install"); // $NON-NLS-1$ assertEquals("installBundle(bundle:${artifact})", instruction.getBody()); // $NON-NLS-1$ instruction = data.getInstruction("uninstall"); // $NON-NLS-1$ assertEquals("uninstallBundle(bundle:${artifact})", instruction.getBody()); // $NON-NLS-1$ instruction = data.getInstruction("configure"); // $NON-NLS-1$ assertEquals("setStartLevel(startLevel:2);", instruction.getBody()); // $NON-NLS-1$ instruction = data.getInstruction("unconfigure"); // $NON-NLS-1$ assertEquals("setStartLevel(startLevel:-1);", instruction.getBody()); // $NON-NLS-1$ }
private void verifyFragment(String cuType) { ArrayList IUs = new ArrayList(publisherResult.getIUs(null, IPublisherResult.NON_ROOT)); for (int i = 0; i < IUs.size(); i++) { InstallableUnit iu = (InstallableUnit) IUs.get(i); if (iu.getId() .equals(flavor + id + "." + cuType + "." + configSpec)) { // $NON-NLS-1$ //$NON-NLS-2$ assertNull(iu.getFilter()); // no filter if config spec is ANY assertTrue(iu.getVersion().equals(version)); assertFalse(iu.isSingleton()); Collection<IProvidedCapability> providedCapabilities = iu.getProvidedCapabilities(); verifyProvidedCapability( providedCapabilities, IInstallableUnit.NAMESPACE_IU_ID, flavor + id + "." + cuType + "." + configSpec, version); //$NON-NLS-1$//$NON-NLS-2$ verifyProvidedCapability( providedCapabilities, flavor + id, id + "." + cuType, version); // $NON-NLS-1$ assertTrue(providedCapabilities.size() == 2); assertTrue(iu.getRequirements().size() == 0); if (cuType.equals("ini")) // $NON-NLS-1$ verifyLauncherArgs(iu); if (cuType.equals("config")) // $NON-NLS-1$ verifyConfigProperties(iu); return; // pass } } fail( "Configuration unit of type " + cuType + " was not enocuntered among fragments"); //$NON-NLS-1$ }
private void verifyAction() { ArrayList IUs = new ArrayList(publisherResult.getIUs(null, IPublisherResult.ROOT)); assertTrue(IUs.size() == 1); InstallableUnit iu = (InstallableUnit) IUs.get(0); assertTrue(iu.getId().equalsIgnoreCase(flavor + id + ".configuration")); // $NON-NLS-1$ // verify ProvidedCapabilities Collection<IProvidedCapability> providedCapabilities = iu.getProvidedCapabilities(); verifyProvidedCapability( providedCapabilities, "org.eclipse.equinox.p2.iu", iu.getId(), version); // $NON-NLS-1$ assertTrue(providedCapabilities.size() == 1); // verify RequiredCapabilities List<IRequirement> requiredCapability = iu.getRequirements(); assertTrue(requiredCapability.size() == 3); verifyRequiredCapability( requiredCapability, IInstallableUnit.NAMESPACE_IU_ID, flavor + id + ".config." + configSpec, new VersionRange(version, true, version, true)); // $NON-NLS-1$ verifyRequiredCapability( requiredCapability, IInstallableUnit.NAMESPACE_IU_ID, flavor + id + ".ini." + configSpec, new VersionRange(version, true, version, true)); // $NON-NLS-1$ verifyRequiredCapability( requiredCapability, IInstallableUnit.NAMESPACE_IU_ID, flavor + configSpec + ORG_ECLIPSE_CORE_COMMANDS, new VersionRange(version, true, version, true)); // verify non root IUs verifyFragment("ini"); // $NON-NLS-1$ verifyFragment("config"); // $NON-NLS-1$ verifyBundleCU(); }