You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2015/03/19 13:14:36 UTC

svn commit: r1667720 - in /sling/trunk/testing/mocks/sling-mock/src: main/java/org/apache/sling/testing/mock/sling/loader/ test/java/org/apache/sling/testing/mock/sling/loader/ test/resources/json-import-samples/

Author: sseifert
Date: Thu Mar 19 12:14:35 2015
New Revision: 1667720

URL: http://svn.apache.org/r1667720
Log:
SLING-4522 Sling Mocks: ContentLoader fails for UTF8 encoded json files on Windows Systems

Modified:
    sling/trunk/testing/mocks/sling-mock/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java
    sling/trunk/testing/mocks/sling-mock/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java
    sling/trunk/testing/mocks/sling-mock/src/test/resources/json-import-samples/content.json

Modified: sling/trunk/testing/mocks/sling-mock/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java
URL: http://svn.apache.org/viewvc/sling/trunk/testing/mocks/sling-mock/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java?rev=1667720&r1=1667719&r2=1667720&view=diff
==============================================================================
--- sling/trunk/testing/mocks/sling-mock/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java (original)
+++ sling/trunk/testing/mocks/sling-mock/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java Thu Mar 19 12:14:35 2015
@@ -31,6 +31,7 @@ import java.util.Map;
 import java.util.Set;
 
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.CharEncoding;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.sling.api.resource.ModifiableValueMap;
@@ -326,7 +327,7 @@ public final class ContentLoader {
 
     private String convertToJsonString(InputStream inputStream) {
         try {
-            return IOUtils.toString(inputStream);
+            return IOUtils.toString(inputStream, CharEncoding.UTF_8);
         } catch (IOException ex) {
             throw new RuntimeException(ex);
         } finally {

Modified: sling/trunk/testing/mocks/sling-mock/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/testing/mocks/sling-mock/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java?rev=1667720&r1=1667719&r2=1667720&view=diff
==============================================================================
--- sling/trunk/testing/mocks/sling-mock/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java (original)
+++ sling/trunk/testing/mocks/sling-mock/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java Thu Mar 19 12:14:35 2015
@@ -179,4 +179,12 @@ public abstract class AbstractContentLoa
         assertEquals(24, calendar.get(Calendar.SECOND));
     }
     
+    @Test
+    public void testUTF8Chars() {
+        Resource resource = this.resourceResolver.getResource("/content/sample/en/jcr:content");
+        ValueMap props = ResourceUtil.getValueMap(resource);
+        
+        assertEquals("äöü߀", props.get("utf8Property"));
+    }
+    
 }

Modified: sling/trunk/testing/mocks/sling-mock/src/test/resources/json-import-samples/content.json
URL: http://svn.apache.org/viewvc/sling/trunk/testing/mocks/sling-mock/src/test/resources/json-import-samples/content.json?rev=1667720&r1=1667719&r2=1667720&view=diff
==============================================================================
--- sling/trunk/testing/mocks/sling-mock/src/test/resources/json-import-samples/content.json (original)
+++ sling/trunk/testing/mocks/sling-mock/src/test/resources/json-import-samples/content.json Thu Mar 19 12:14:35 2015
@@ -14,6 +14,7 @@
     "sling:resourceType": "sample/components/homepage",
     "app:designPath": "/etc/designs/sample",
     "app:lastModifiedBy": "admin",
+    "utf8Property": "äöü߀",
     "par": {
       "jcr:primaryType": "nt:unstructured",
       "sling:resourceType": "foundation/components/parsys",