Skip to content

Commit 9032e2d

Browse files
committed
[bugfix] ImportFromPkgTest must not rely on the ordering of results from xmldb:get-child-resources#2
1 parent 7c8d349 commit 9032e2d

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

exist-core/src/test/java/org/exist/xquery/ImportFromPkgTest.java

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,12 @@
2727
import org.xmldb.api.base.ResourceSet;
2828
import org.xmldb.api.base.XMLDBException;
2929

30+
import java.io.File;
3031
import java.net.URISyntaxException;
3132
import java.nio.file.Path;
3233
import java.nio.file.Paths;
34+
import java.util.HashSet;
35+
import java.util.Set;
3336

3437
import static org.junit.Assert.*;
3538

@@ -40,11 +43,10 @@ public class ImportFromPkgTest {
4043

4144
private static Path getConfigFile() {
4245
final ClassLoader loader = ImportFromPkgTest.class.getClassLoader();
43-
final char separator = System.getProperty("file.separator").charAt(0);
44-
final String packagePath = ImportFromPkgTest.class.getPackage().getName().replace('.', separator);
46+
final String packagePath = ImportFromPkgTest.class.getPackage().getName().replace('.', File.separatorChar);
4547

4648
try {
47-
return Paths.get(loader.getResource(packagePath + separator + "import-from-pkg-test.conf.xml").toURI());
49+
return Paths.get(loader.getResource(packagePath + File.separatorChar + "import-from-pkg-test.conf.xml").toURI());
4850
} catch (final URISyntaxException e) {
4951
fail(e.getMessage());
5052
return null;
@@ -56,16 +58,18 @@ private static Path getConfigFile() {
5658

5759
@Test
5860
public void printPackages() throws XMLDBException {
59-
//final String query = "import module namespace packages=\"http://exist-db.org/apps/existdb-packages\" at \"/db/apps/packageservice/modules/packages.xqm\";\n" +
60-
//"packages:get-local-packages()";
61-
6261
final String query = "xmldb:get-child-resources('/db/system/repo/functx-1.0.1/functx/')";
6362

64-
final ResourceSet resultSet = existXmldbEmbeddedServer.executeQuery(query);
63+
final Set<String> expected = new HashSet<>();
64+
expected.add("functx.xq");
65+
expected.add("functx.xsl");
6566

67+
final ResourceSet resultSet = existXmldbEmbeddedServer.executeQuery(query);
6668
assertEquals(2, resultSet.getSize());
67-
assertEquals("functx.xsl", resultSet.getResource(0).getContent().toString());
68-
assertEquals("functx.xq", resultSet.getResource(1).getContent().toString());
69+
final Set<String> actual = new HashSet<>();
70+
actual.add(resultSet.getResource(0).getContent().toString());
71+
actual.add(resultSet.getResource(1).getContent().toString());
72+
assertEquals(expected, actual);
6973
}
7074

7175
@Test

0 commit comments

Comments
 (0)