diff --git a/src/main/java/org/olat/core/util/vfs/restapi/VFSWebservice.java b/src/main/java/org/olat/core/util/vfs/restapi/VFSWebservice.java index e317b80483b9b4882b544e0f650731d88ffea777..8d596fe56feefb03b2f3fe7e171b4f7fb9fd446c 100644 --- a/src/main/java/org/olat/core/util/vfs/restapi/VFSWebservice.java +++ b/src/main/java/org/olat/core/util/vfs/restapi/VFSWebservice.java @@ -525,7 +525,7 @@ public class VFSWebservice { for(PathSegment seg:path) { String segPath = seg.getPath(); for(VFSItem item : directory.getItems(new SystemItemFilter())) { - if(normalize(item.getName()).equals(segPath)) { + if(item.getName().equals(segPath) || normalize(item.getName()).equals(segPath)) { if(item instanceof VFSLeaf) { if(path.get(path.size() - 1) == seg) { resolvedItem = item; diff --git a/src/test/java/org/olat/restapi/FolderTest.java b/src/test/java/org/olat/restapi/FolderTest.java index 41aaa25b0a24da130426e194001a44705cd91514..63e08bdab9fb78c2d5438b92335b8449a514b318 100644 --- a/src/test/java/org/olat/restapi/FolderTest.java +++ b/src/test/java/org/olat/restapi/FolderTest.java @@ -20,9 +20,15 @@ package org.olat.restapi; import static org.junit.Assert.assertEquals; -import static org.olat.core.util.vfs.restapi.VFSWebservice.normalize; + +import java.util.Arrays; +import java.util.Collection; import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.junit.runners.Parameterized.Parameters; +import org.olat.core.util.vfs.restapi.VFSWebservice; /** * * <h3>Description:</h3> @@ -30,13 +36,30 @@ import org.junit.Test; * Initial Date: 28 jan. 2011 <br> * @author srosse, stephane.rosse@frentix.com, www.frentix.com */ +@RunWith(Parameterized.class) public class FolderTest { + + @Parameters + public static Collection<Object[]> data() { + return Arrays.asList(new Object[][] { + { "HASTDJUR", "HÄSTDJUR" }, + { "HASTDJUR", "HÄSTDJÃœR" }, + { "HAST_DJUR", "HÄST_DJUR" }, + { "This_is_a_funky_String", "TĥïŠĩš â fůňķŷ ŠťŕÄÅ„Ä¡" } + }); + } + + private String expected; + private String string; + + public FolderTest(String expected, String string) { + this.expected = expected; + this.string = string; + } @Test public void testNormalizer() { - assertEquals("HASTDJUR", normalize("HÄSTDJUR")); - assertEquals("HASTDJUR", normalize("HÄSTDJÃœR")); - assertEquals("HAST_DJUR", normalize("HÄST_DJUR")); - assertEquals("This_is_a_funky_String", normalize("TĥïŠĩš â fůňķŷ ŠťŕÄÅ„Ä¡")); + String normalized = VFSWebservice.normalize(string); + assertEquals(expected, normalized); } }