You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by jw...@apache.org on 2015/09/17 22:42:35 UTC

svn commit: r1703687 - /aries/trunk/subsystem/subsystem-itests/src/test/java/org/apache/aries/subsystem/itests/ServiceDependencyTest.java

Author: jwross
Date: Thu Sep 17 20:42:35 2015
New Revision: 1703687

URL: http://svn.apache.org/viewvc?rev=1703687&view=rev
Log:
Fix a test issue that is currently only occuring on a 1.6 VM, but could possibly occur at any time. Subsystem-ImportService clauses should not be compared using a string equals.

Modified:
    aries/trunk/subsystem/subsystem-itests/src/test/java/org/apache/aries/subsystem/itests/ServiceDependencyTest.java

Modified: aries/trunk/subsystem/subsystem-itests/src/test/java/org/apache/aries/subsystem/itests/ServiceDependencyTest.java
URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-itests/src/test/java/org/apache/aries/subsystem/itests/ServiceDependencyTest.java?rev=1703687&r1=1703686&r2=1703687&view=diff
==============================================================================
--- aries/trunk/subsystem/subsystem-itests/src/test/java/org/apache/aries/subsystem/itests/ServiceDependencyTest.java (original)
+++ aries/trunk/subsystem/subsystem-itests/src/test/java/org/apache/aries/subsystem/itests/ServiceDependencyTest.java Thu Sep 17 20:42:35 2015
@@ -18,10 +18,13 @@ import static org.junit.Assert.assertNul
 import static org.junit.Assert.fail;
 
 import java.io.IOException;
+import java.util.Collection;
 import java.util.HashMap;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
+import org.apache.aries.subsystem.core.archive.SubsystemImportServiceHeader;
 import org.apache.aries.subsystem.itests.util.GenericMetadataWrapper;
 import org.apache.aries.util.manifest.ManifestHeaderProcessor;
 import org.apache.aries.util.manifest.ManifestHeaderProcessor.GenericMetadata;
@@ -323,10 +326,15 @@ public class ServiceDependencyTest exten
 	
 	private void assertSubsystemImportServiceHeader(Subsystem subsystem, String value) throws InvalidSyntaxException {
 		String header = assertHeaderExists(subsystem, SubsystemConstants.SUBSYSTEM_IMPORTSERVICE);
-		List<GenericMetadata> actual = ManifestHeaderProcessor.parseRequirementString(header);
-		List<GenericMetadata> expected = ManifestHeaderProcessor.parseRequirementString(value);
-		Assert.assertEquals("Wrong number of clauses", expected.size(), actual.size());
-		for (int i = 0; i < expected.size(); i++)
-			assertEquals("Wrong clause", new GenericMetadataWrapper(expected.get(i)), new GenericMetadataWrapper(actual.get(i)));
+		SubsystemImportServiceHeader actual = new SubsystemImportServiceHeader(header);
+		SubsystemImportServiceHeader expected = new SubsystemImportServiceHeader(value);
+		Collection<SubsystemImportServiceHeader.Clause> actualClauses = actual.getClauses();
+		Collection<SubsystemImportServiceHeader.Clause> expectedClauses = expected.getClauses();
+		Assert.assertEquals("Wrong number of clauses", expectedClauses.size(), actualClauses.size());
+		Iterator<SubsystemImportServiceHeader.Clause> actualItr = actualClauses.iterator();
+		Iterator<SubsystemImportServiceHeader.Clause>  expectedItr = expectedClauses.iterator();
+		while (expectedItr.hasNext()) {
+			assertEquals("Wrong clause", expectedItr.next(), actualItr.next());
+		}
 	}
 }