You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bd...@apache.org on 2018/06/20 13:28:24 UTC
[sling-whiteboard] 01/02: Test exception behavior as well
This is an automated email from the ASF dual-hosted git repository.
bdelacretaz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-whiteboard.git
commit a059dc1bd0d54e1d8dc1b07675ad34ca2ddaf8a1
Author: Bertrand Delacretaz <bd...@apache.org>
AuthorDate: Wed Jun 20 15:10:47 2018 +0200
Test exception behavior as well
---
...WriterTest.java => CapabilitesServletTest.java} | 0
.../internal/JSONCapabilitiesWriterTest.java | 23 ++++++++++++++++++++++
2 files changed, 23 insertions(+)
diff --git a/capabilities/src/test/java/org/apache/sling/capabilities/internal/JSONCapabilitiesWriterTest.java b/capabilities/src/test/java/org/apache/sling/capabilities/internal/CapabilitesServletTest.java
similarity index 100%
copy from capabilities/src/test/java/org/apache/sling/capabilities/internal/JSONCapabilitiesWriterTest.java
copy to capabilities/src/test/java/org/apache/sling/capabilities/internal/CapabilitesServletTest.java
diff --git a/capabilities/src/test/java/org/apache/sling/capabilities/internal/JSONCapabilitiesWriterTest.java b/capabilities/src/test/java/org/apache/sling/capabilities/internal/JSONCapabilitiesWriterTest.java
index 78e6b75..c08034c 100644
--- a/capabilities/src/test/java/org/apache/sling/capabilities/internal/JSONCapabilitiesWriterTest.java
+++ b/capabilities/src/test/java/org/apache/sling/capabilities/internal/JSONCapabilitiesWriterTest.java
@@ -49,6 +49,9 @@ public class JSONCapabilitiesWriterTest {
@Override
public Map<String, Object> getCapabilities() throws Exception {
+ if(namespace.contains("EXCEPTION")) {
+ throw new IllegalArgumentException("Simulating a problem");
+ }
return Collections.unmodifiableMap(props);
}
@@ -79,4 +82,24 @@ public class JSONCapabilitiesWriterTest {
assertEquals("Expecting 2 keys at A", 2, json.getJsonObject("A").keySet().size());
assertEquals("Expecting 1 key at B", 1, json.getJsonObject("B").keySet().size());
}
+
+ @Test
+ public void testWithException() throws IOException {
+ final List<CapabilitiesSource> sources = new ArrayList<>();
+ sources.add(new TestSource("A", 1));
+ sources.add(new TestSource("EXCEPTION", 2));
+ sources.add(new TestSource("B", 1));
+
+ final StringWriter w = new StringWriter();
+ new JSONCapabilitiesWriter().writeJson(w, sources);
+
+ final JsonReader r = Json.createReader(new StringReader(w.toString()));
+ final JsonObject rootJson = r.readObject();
+ final JsonObject json = rootJson.getJsonObject(JSONCapabilitiesWriter.CAPS_KEY);
+ assertEquals("VALUE_0_A", json.getJsonObject("A").getString("KEY_0_A"));
+ assertEquals("java.lang.IllegalArgumentException:Simulating a problem", json.getJsonObject("EXCEPTION").getString("_EXCEPTION_"));
+ assertEquals("VALUE_0_B", json.getJsonObject("B").getString("KEY_0_B"));
+
+ assertEquals("Expecting 1 key at EXCEPTION", 1, json.getJsonObject("EXCEPTION").keySet().size());
+ }
}
\ No newline at end of file