SLING-3818 - RunModeImplTest.testParseRunModes fails under Java 8 :
Parsed runModes match for ' foo , bar '
Updated the test to no longer rely on the order of the returned run
modes.
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1615633 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/test/java/org/apache/sling/settings/impl/RunModeImplTest.java b/src/test/java/org/apache/sling/settings/impl/RunModeImplTest.java
index 658fad5..d32f5e6 100644
--- a/src/test/java/org/apache/sling/settings/impl/RunModeImplTest.java
+++ b/src/test/java/org/apache/sling/settings/impl/RunModeImplTest.java
@@ -18,8 +18,9 @@
*/
package org.apache.sling.settings.impl;
-import static org.junit.Assert.assertArrayEquals;
+import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
import java.io.File;
@@ -27,6 +28,7 @@
import java.io.InputStream;
import java.util.Dictionary;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Map;
import java.util.Set;
@@ -74,8 +76,13 @@
private void assertParse(String str, String [] expected) {
final SlingSettingsService rm = new SlingSettingsServiceImpl(new BundleContextMock(str, null, null), new StartupHandlerImpl());
final Set<String> modes = rm.getRunModes();
- final String[] actual = modes.toArray(new String[modes.size()]);
- assertArrayEquals("Parsed runModes match for '" + str + "'", expected, actual);
+
+ Set<String> expectedSet = new HashSet<String>(expected.length);
+ for (String expectedEntry : expected) {
+ expectedSet.add(expectedEntry);
+ }
+
+ assertThat("Parsed runModes match for '" + str + "'", modes, equalTo(expectedSet));
}
@org.junit.Test public void testParseRunModes() {