You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ju...@apache.org on 2018/01/30 16:16:17 UTC

[sling-org-apache-sling-models-integration-tests] branch master updated: SLING-7344 - force UTF-8 as character encoding for application/json in ExportServlet

This is an automated email from the ASF dual-hosted git repository.

justin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-models-integration-tests.git


The following commit(s) were added to refs/heads/master by this push:
     new 24d1588  SLING-7344 - force UTF-8 as character encoding for application/json in ExportServlet
24d1588 is described below

commit 24d15886ef5e1cb5c28aea3b41d386977ef320a3
Author: Justin Edelson <ju...@justinedelson.com>
AuthorDate: Tue Jan 30 11:16:01 2018 -0500

    SLING-7344 - force UTF-8 as character encoding for application/json in ExportServlet
---
 .../java/org/apache/sling/models/testing/exporter/ExporterIT.java   | 6 ++++++
 .../java/org/apache/sling/models/testing/exporter/FakeResponse.java | 5 +++--
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/test/java/org/apache/sling/models/testing/exporter/ExporterIT.java b/src/test/java/org/apache/sling/models/testing/exporter/ExporterIT.java
index 83c6c98..e73cb6a 100644
--- a/src/test/java/org/apache/sling/models/testing/exporter/ExporterIT.java
+++ b/src/test/java/org/apache/sling/models/testing/exporter/ExporterIT.java
@@ -236,6 +236,7 @@ public class ExporterIT {
             slingRequestProcessor.processRequest(new FakeRequest(baseComponentPath + ".model.json"), response, resolver);
             JsonObject obj = Json.createReader(new StringReader((response.getStringWriter().toString()))).readObject();
             Assert.assertEquals("application/json", response.getContentType());
+            Assert.assertEquals("UTF-8", response.getCharacterEncoding());
             Assert.assertEquals("BASETESTVALUE", obj.getString("UPPER"));
             Assert.assertEquals(baseComponentPath, obj.getString("id"));
 
@@ -243,6 +244,7 @@ public class ExporterIT {
             slingRequestProcessor.processRequest(new FakeRequest(extendedComponentPath + ".model.json"), response, resolver);
             obj = Json.createReader(new StringReader((response.getStringWriter().toString()))).readObject();
             Assert.assertEquals("application/json", response.getContentType());
+            Assert.assertEquals("UTF-8", response.getCharacterEncoding());
             Assert.assertEquals(extendedComponentPath, obj.getString("id"));
             Assert.assertEquals(testDate.getTimeInMillis(), obj.getJsonNumber("date").longValue());
 
@@ -250,6 +252,7 @@ public class ExporterIT {
             slingRequestProcessor.processRequest(new FakeRequest(interfaceComponentPath + ".model.json"), response, resolver);
             obj = Json.createReader(new StringReader((response.getStringWriter().toString()))).readObject();
             Assert.assertEquals("application/json", response.getContentType());
+            Assert.assertEquals("UTF-8", response.getCharacterEncoding());
             Assert.assertEquals(interfaceComponentPath, obj.getString("id"));
             Assert.assertEquals("interfaceTESTValue", obj.getString("sampleValue"));
         } finally {
@@ -272,6 +275,7 @@ public class ExporterIT {
 
             JsonObject obj = Json.createReader(new StringReader(stringOutput)).readObject();
             Assert.assertEquals("application/json", response.getContentType());
+            Assert.assertEquals("UTF-8", response.getCharacterEncoding());
             Assert.assertEquals("BASETESTVALUE", obj.getString("UPPER"));
             Assert.assertTrue(obj.containsKey("testBindingsObject"));
             JsonObject testBindingsObject = obj.getJsonObject("testBindingsObject");
@@ -285,6 +289,7 @@ public class ExporterIT {
             slingRequestProcessor.processRequest(new FakeRequest(extendedRequestComponentPath + ".model.json"), response, resolver);
             obj = Json.createReader(new StringReader((response.getStringWriter().toString()))).readObject();
             Assert.assertEquals("application/json", response.getContentType());
+            Assert.assertEquals("UTF-8", response.getCharacterEncoding());
             Assert.assertEquals(extendedRequestComponentPath, obj.getString("id"));
             Assert.assertEquals(dateFormat.format(testDate), obj.getString("date"));
 
@@ -292,6 +297,7 @@ public class ExporterIT {
             slingRequestProcessor.processRequest(new FakeRequest(interfaceRequestComponentPath + ".model.json"), response, resolver);
             obj = Json.createReader(new StringReader((response.getStringWriter().toString()))).readObject();
             Assert.assertEquals("application/json", response.getContentType());
+            Assert.assertEquals("UTF-8", response.getCharacterEncoding());
             Assert.assertEquals(interfaceRequestComponentPath, obj.getString("id"));
             Assert.assertEquals("interfaceTESTValue", obj.getString("sampleValue"));
         } finally {
diff --git a/src/test/java/org/apache/sling/models/testing/exporter/FakeResponse.java b/src/test/java/org/apache/sling/models/testing/exporter/FakeResponse.java
index d35bd06..883d380 100644
--- a/src/test/java/org/apache/sling/models/testing/exporter/FakeResponse.java
+++ b/src/test/java/org/apache/sling/models/testing/exporter/FakeResponse.java
@@ -28,6 +28,7 @@ class FakeResponse implements HttpServletResponse {
 
     private StringWriter stringWriter = new StringWriter();
     private String contentType = null;
+    private String characterEncoding = null;
 
     @Override
     public void addCookie(Cookie cookie) {
@@ -115,7 +116,7 @@ class FakeResponse implements HttpServletResponse {
 
     @Override
     public String getCharacterEncoding() {
-        return null;
+        return characterEncoding;
     }
 
     @Override
@@ -135,7 +136,7 @@ class FakeResponse implements HttpServletResponse {
 
     @Override
     public void setCharacterEncoding(String charset) {
-
+        this.characterEncoding = charset;
     }
 
     @Override

-- 
To stop receiving notification emails like this one, please contact
justin@apache.org.