Author: frm
Date: Tue Nov 29 13:38:43 2016
New Revision: 1771902
URL: http://svn.apache.org/viewvc?rev=1771902&view=rev
Log:
OAK-5180 - Fix and enable RemoteServerIT
Modified:
jackrabbit/oak/trunk/oak-remote/src/test/java/org/apache/jackrabbit/oak/remote/http/handler/RemoteServerIT.java
Modified:
jackrabbit/oak/trunk/oak-remote/src/test/java/org/apache/jackrabbit/oak/remote/http/handler/RemoteServerIT.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-remote/src/test/java/org/apache/jackrabbit/oak/remote/http/handler/RemoteServerIT.java?rev=1771902&r1=1771901&r2=1771902&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-remote/src/test/java/org/apache/jackrabbit/oak/remote/http/handler/RemoteServerIT.java
(original)
+++
jackrabbit/oak/trunk/oak-remote/src/test/java/org/apache/jackrabbit/oak/remote/http/handler/RemoteServerIT.java
Tue Nov 29 13:38:43 2016
@@ -17,10 +17,6 @@
package org.apache.jackrabbit.oak.remote.http.handler;
-import static com.mashape.unirest.http.Unirest.get;
-import static com.mashape.unirest.http.Unirest.head;
-import static com.mashape.unirest.http.Unirest.patch;
-import static com.mashape.unirest.http.Unirest.post;
import static java.util.Arrays.asList;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
@@ -33,6 +29,7 @@ import java.io.Closeable;
import java.io.InputStream;
import java.math.BigDecimal;
import java.net.ServerSocket;
+import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.regex.Matcher;
@@ -40,9 +37,14 @@ import java.util.regex.Pattern;
import javax.jcr.SimpleCredentials;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.base.Charsets;
+import com.google.common.io.ByteStreams;
import com.mashape.unirest.http.HttpResponse;
-import com.mashape.unirest.http.JsonNode;
+import com.mashape.unirest.http.Unirest;
+import com.mashape.unirest.request.GetRequest;
+import com.mashape.unirest.request.HttpRequestWithBody;
import org.apache.commons.io.IOUtils;
import org.apache.jackrabbit.oak.Oak;
import org.apache.jackrabbit.oak.OakBaseTest;
@@ -58,10 +60,8 @@ import org.apache.jackrabbit.oak.remote.
import org.apache.jackrabbit.util.ISO8601;
import org.junit.After;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
-@Ignore("OAK-5171")
public class RemoteServerIT extends OakBaseTest {
private ContentRepository contentRepository;
@@ -113,10 +113,6 @@ public class RemoteServerIT extends OakB
}
}
- private String resource(String path) {
- return "http://localhost:" + port + path;
- }
-
private String load(String name) throws Exception {
InputStream is = null;
try {
@@ -148,14 +144,14 @@ public class RemoteServerIT extends OakB
@Test
public void testReadLastRevision() throws Exception {
- HttpResponse<JsonNode> response =
get(resource("/revisions/last")).basicAuth("admin", "admin").asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last").basicAuth("admin", "admin").asBinary();
assertEquals(200, response.getStatus());
- assertNotNull(getRevision(response));
+ assertNotNull(getRevision(json(response)));
}
@Test
public void testReadLastRevisionWithoutAuthentication() throws Exception {
- assertEquals(401,
get(resource("/revisions/last")).asJson().getStatus());
+ assertEquals(401, get("/revisions/last").asString().getStatus());
}
@Test
@@ -167,7 +163,7 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
assertEquals(200, response.getStatus());
}
@@ -180,7 +176,7 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").asBinary();
assertEquals(401, response.getStatus());
}
@@ -193,13 +189,13 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
assertFalse(response.getHeaders().getFirst("oak-revision").isEmpty());
}
@Test
public void testReadLastRevisionTreeWithNotExistingTree() throws Exception
{
- assertEquals(404,
get(resource("/revisions/last/tree/node")).basicAuth("admin",
"admin").asJson().getStatus());
+ assertEquals(404, get("/revisions/last/tree/node").basicAuth("admin",
"admin").asString().getStatus());
}
@Test
@@ -211,8 +207,8 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertFalse(getHasMoreChildren(response));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ assertFalse(getHasMoreChildren(json(response)));
}
@Test
@@ -227,8 +223,8 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ assertTrue(hasNullChild(json(response), "child"));
}
@Test
@@ -241,11 +237,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("string", getPropertyType(response, "property"));
- assertEquals("a", getStringPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("string", getPropertyType(body, "property"));
+ assertEquals("a", getStringPropertyValue(body, "property"));
}
@Test
@@ -258,12 +253,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("strings", getPropertyType(response, "property"));
- assertEquals("a", getStringPropertyValue(response, "property", 0));
- assertEquals("b", getStringPropertyValue(response, "property", 1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("strings", getPropertyType(body, "property"));
+ assertEquals("a", getStringPropertyValue(body, "property", 0));
+ assertEquals("b", getStringPropertyValue(body, "property", 1));
}
@Test
@@ -276,12 +270,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("binaryIds", getPropertyType(response, "property"));
- assertFalse(getStringPropertyValue(response, "property", 0).isEmpty());
- assertFalse(getStringPropertyValue(response, "property", 1).isEmpty());
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("binaryIds", getPropertyType(body, "property"));
+ assertFalse(getStringPropertyValue(body, "property", 0).isEmpty());
+ assertFalse(getStringPropertyValue(body, "property", 1).isEmpty());
}
@Test
@@ -294,11 +287,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("binaryId", getPropertyType(response, "property"));
- assertFalse(getStringPropertyValue(response, "property").isEmpty());
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("binaryId", getPropertyType(body, "property"));
+ assertFalse(getStringPropertyValue(body, "property").isEmpty());
}
@Test
@@ -311,11 +303,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("long", getPropertyType(response, "property"));
- assertEquals(42L, getLongPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("long", getPropertyType(body, "property"));
+ assertEquals(42L, getLongPropertyValue(body, "property"));
}
@Test
@@ -328,12 +319,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("longs", getPropertyType(response, "property"));
- assertEquals(4L, getLongPropertyValue(response, "property", 0));
- assertEquals(2L, getLongPropertyValue(response, "property", 1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("longs", getPropertyType(body, "property"));
+ assertEquals(4L, getLongPropertyValue(body, "property", 0));
+ assertEquals(2L, getLongPropertyValue(body, "property", 1));
}
@Test
@@ -346,11 +336,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("double", getPropertyType(response, "property"));
- assertEquals(4.2, getDoublePropertyValue(response, "property"), 1e-10);
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("double", getPropertyType(body, "property"));
+ assertEquals(4.2, getDoublePropertyValue(body, "property"), 1e-10);
}
@Test
@@ -363,12 +352,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("doubles", getPropertyType(response, "property"));
- assertEquals(4.2, getDoublePropertyValue(response, "property", 0),
1e-10);
- assertEquals(2.4, getDoublePropertyValue(response, "property", 1),
1e-10);
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("doubles", getPropertyType(body, "property"));
+ assertEquals(4.2, getDoublePropertyValue(body, "property", 0), 1e-10);
+ assertEquals(2.4, getDoublePropertyValue(body, "property", 1), 1e-10);
}
@Test
@@ -383,11 +371,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("date", getPropertyType(response, "property"));
- assertEquals(calendar.getTimeInMillis(),
getLongPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("date", getPropertyType(body, "property"));
+ assertEquals(calendar.getTimeInMillis(), getLongPropertyValue(body,
"property"));
}
@Test
@@ -402,12 +389,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("dates", getPropertyType(response, "property"));
- assertEquals(calendar.getTimeInMillis(),
getLongPropertyValue(response, "property", 0));
- assertEquals(calendar.getTimeInMillis(),
getLongPropertyValue(response, "property", 1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("dates", getPropertyType(body, "property"));
+ assertEquals(calendar.getTimeInMillis(), getLongPropertyValue(body,
"property", 0));
+ assertEquals(calendar.getTimeInMillis(), getLongPropertyValue(body,
"property", 1));
}
@Test
@@ -420,11 +406,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("boolean", getPropertyType(response, "property"));
- assertEquals(true, getBooleanPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("boolean", getPropertyType(body, "property"));
+ assertEquals(true, getBooleanPropertyValue(body, "property"));
}
@Test
@@ -437,12 +422,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("booleans", getPropertyType(response, "property"));
- assertEquals(true, getBooleanPropertyValue(response, "property", 0));
- assertEquals(false, getBooleanPropertyValue(response, "property", 1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("booleans", getPropertyType(body, "property"));
+ assertEquals(true, getBooleanPropertyValue(body, "property", 0));
+ assertEquals(false, getBooleanPropertyValue(body, "property", 1));
}
@Test
@@ -455,11 +439,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("name", getPropertyType(response, "property"));
- assertEquals("value", getStringPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("name", getPropertyType(body, "property"));
+ assertEquals("value", getStringPropertyValue(body, "property"));
}
@Test
@@ -472,12 +455,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("names", getPropertyType(response, "property"));
- assertEquals("first", getStringPropertyValue(response, "property", 0));
- assertEquals("second", getStringPropertyValue(response, "property",
1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("names", getPropertyType(body, "property"));
+ assertEquals("first", getStringPropertyValue(body, "property", 0));
+ assertEquals("second", getStringPropertyValue(body, "property", 1));
}
@Test
@@ -490,11 +472,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("path", getPropertyType(response, "property"));
- assertEquals("/value", getStringPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("path", getPropertyType(body, "property"));
+ assertEquals("/value", getStringPropertyValue(body, "property"));
}
@Test
@@ -507,12 +488,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("paths", getPropertyType(response, "property"));
- assertEquals("/first", getStringPropertyValue(response, "property",
0));
- assertEquals("/second", getStringPropertyValue(response, "property",
1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("paths", getPropertyType(body, "property"));
+ assertEquals("/first", getStringPropertyValue(body, "property", 0));
+ assertEquals("/second", getStringPropertyValue(body, "property", 1));
}
@Test
@@ -525,11 +505,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("reference", getPropertyType(response, "property"));
- assertEquals("value", getStringPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("reference", getPropertyType(body, "property"));
+ assertEquals("value", getStringPropertyValue(body, "property"));
}
@Test
@@ -542,12 +521,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("references", getPropertyType(response, "property"));
- assertEquals("first", getStringPropertyValue(response, "property", 0));
- assertEquals("second", getStringPropertyValue(response, "property",
0));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("references", getPropertyType(body, "property"));
+ assertEquals("first", getStringPropertyValue(body, "property", 0));
+ assertEquals("second", getStringPropertyValue(body, "property", 1));
}
@Test
@@ -560,11 +538,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("weakReference", getPropertyType(response, "property"));
- assertEquals("value", getStringPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("weakReference", getPropertyType(body, "property"));
+ assertEquals("value", getStringPropertyValue(body, "property"));
}
@Test
@@ -577,12 +554,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("weakReferences", getPropertyType(response, "property"));
- assertEquals("first", getStringPropertyValue(response, "property", 0));
- assertEquals("second", getStringPropertyValue(response, "property",
1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("weakReferences", getPropertyType(body, "property"));
+ assertEquals("first", getStringPropertyValue(body, "property", 0));
+ assertEquals("second", getStringPropertyValue(body, "property", 1));
}
@Test
@@ -595,11 +571,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("uri", getPropertyType(response, "property"));
- assertEquals("http://acme.org", getStringPropertyValue(response,
"property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("uri", getPropertyType(body, "property"));
+ assertEquals("http://acme.org", getStringPropertyValue(body,
"property"));
}
@Test
@@ -612,12 +587,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("uris", getPropertyType(response, "property"));
- assertEquals("http://acme.org", getStringPropertyValue(response,
"property", 0));
- assertEquals("http://acme.com", getStringPropertyValue(response,
"property", 1));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("uris", getPropertyType(body, "property"));
+ assertEquals("http://acme.org", getStringPropertyValue(body,
"property", 0));
+ assertEquals("http://acme.com", getStringPropertyValue(body,
"property", 1));
}
@Test
@@ -630,11 +604,10 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("decimal", getPropertyType(response, "property"));
- assertEquals("0", getStringPropertyValue(response, "property"));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("decimal", getPropertyType(body, "property"));
+ assertEquals("0", getStringPropertyValue(body, "property"));
}
@Test
@@ -647,12 +620,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- assertTrue(hasNullChild(response, "child"));
-
- assertEquals("decimals", getPropertyType(response, "property"));
- assertEquals("0", getStringPropertyValue(response, "property", 0));
- assertEquals("1", getStringPropertyValue(response, "property", 0));
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ JsonNode body = json(response);
+ assertEquals("decimals", getPropertyType(body, "property"));
+ assertEquals("0", getStringPropertyValue(body, "property", 0));
+ assertEquals("1", getStringPropertyValue(body, "property", 1));
}
@Test
@@ -670,11 +642,11 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin",
"admin").queryString("depth", 1).asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin",
"admin").queryString("depth", 1).asBinary();
assertEquals(200, response.getStatus());
-
- assertFalse(hasNullChild(response, "child"));
- assertTrue(hasNullGrandChild(response, "child", "grandChild"));
+ JsonNode body = json(response);
+ assertFalse(hasNullChild(body, "child"));
+ assertTrue(hasNullGrandChild(body, "child", "grandChild"));
}
@Test
@@ -689,12 +661,12 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin",
"admin").queryString("properties", "ba*").queryString("properties",
"-baz").asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin",
"admin").queryString("properties", "ba*").queryString("properties",
"-baz").asBinary();
assertEquals(200, response.getStatus());
-
- assertFalse(hasProperty(response, "foo"));
- assertTrue(hasProperty(response, "bar"));
- assertFalse(hasProperty(response, "baz"));
+ JsonNode body = json(response);
+ assertFalse(hasProperty(body, "foo"));
+ assertTrue(hasProperty(body, "bar"));
+ assertFalse(hasProperty(body, "baz"));
}
@Test
@@ -715,12 +687,12 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin",
"admin").queryString("children", "ba*").queryString("children",
"-baz").asJson();
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin",
"admin").queryString("children", "ba*").queryString("children",
"-baz").asBinary();
assertEquals(200, response.getStatus());
-
- assertFalse(hasChild(response, "foo"));
- assertTrue(hasChild(response, "bar"));
- assertFalse(hasChild(response, "baz"));
+ JsonNode body = json(response);
+ assertFalse(hasChild(body, "foo"));
+ assertTrue(hasChild(body, "bar"));
+ assertFalse(hasChild(body, "baz"));
}
@Test
@@ -732,16 +704,16 @@ public class RemoteServerIT extends OakB
root.commit();
- String revision =
get(resource("/revisions/last/tree/node")).basicAuth("admin",
"admin").asJson().getHeaders().getFirst("oak-revision");
+ String revision = get("/revisions/last/tree/node").basicAuth("admin",
"admin").asString().getHeaders().getFirst("oak-revision");
- HttpResponse<JsonNode> response =
get(resource("/revisions/{revision}/tree/node")).basicAuth("admin",
"admin").routeParam("revision", revision).asJson();
+ HttpResponse<InputStream> response =
get("/revisions/{revision}/tree/node").basicAuth("admin",
"admin").routeParam("revision", revision).asBinary();
assertEquals(200, response.getStatus());
assertEquals(revision, response.getHeaders().getFirst("oak-revision"));
}
@Test
public void testReadTreeAtRevisionWithInvalidRevision() throws Exception {
- assertEquals(410,
get(resource("/revisions/any/tree/node")).basicAuth("admin",
"admin").asJson().getStatus());
+ assertEquals(410, get("/revisions/any/tree/node").basicAuth("admin",
"admin").asString().getStatus());
}
@Test
@@ -754,24 +726,24 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}")).basicAuth("admin",
"admin").routeParam("binaryId", binaryId).asString();
+ HttpResponse<InputStream> binaryResponse =
get("/binaries/{binaryId}").basicAuth("admin", "admin").routeParam("binaryId",
binaryId).asBinary();
assertEquals(200, binaryResponse.getStatus());
- assertEquals("test", binaryResponse.getBody());
+ assertEquals("test", string(binaryResponse));
assertEquals("4",
binaryResponse.getHeaders().getFirst("content-length"));
}
@Test
public void testReadBinaryWithoutAuthentication() throws Exception {
- HttpResponse<String> response =
get(resource("/binaries/any")).asString();
+ HttpResponse<InputStream> response = get("/binaries/any").asBinary();
assertEquals(401, response.getStatus());
}
@Test
public void testReadBinaryWithInvalidId() throws Exception {
- HttpResponse<String> response =
get(resource("/binaries/any")).basicAuth("admin", "admin").asString();
+ HttpResponse<InputStream> response =
get("/binaries/any").basicAuth("admin", "admin").asBinary();
assertEquals(404, response.getStatus());
}
@@ -785,44 +757,44 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
// Offset = 0
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}"))
+ HttpResponse<InputStream> binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=0")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*0\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("10",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("0123456789", binaryResponse.getBody());
+ assertEquals("0123456789", string(binaryResponse));
// Offset = 3
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes = 3")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*3\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("7",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("3456789", binaryResponse.getBody());
+ assertEquals("3456789", string(binaryResponse));
// Offset = 9 (last)
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=9")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*9\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("1",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("9", binaryResponse.getBody());
+ assertEquals("9", string(binaryResponse));
}
@Test
@@ -835,44 +807,44 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
// Last 10 bytes (full body)
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}"))
+ HttpResponse<InputStream> binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=-10")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*0\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("10",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("0123456789", binaryResponse.getBody());
+ assertEquals("0123456789", string(binaryResponse));
// Last 3 bytes
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=-3")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*7\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("3",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("789", binaryResponse.getBody());
+ assertEquals("789", string(binaryResponse));
// Last 1 byte
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=-1")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*9\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("1",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("9", binaryResponse.getBody());
+ assertEquals("9", string(binaryResponse));
}
@Test
@@ -885,56 +857,56 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
// Range 0-9 (full body)
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}"))
+ HttpResponse<InputStream> binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=0-9")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*0\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("10",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("0123456789", binaryResponse.getBody());
+ assertEquals("0123456789", string(binaryResponse));
// Range 0- (full body)
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=0-")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*0\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("10",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("0123456789", binaryResponse.getBody());
+ assertEquals("0123456789", string(binaryResponse));
// Range 3-6
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=3- 6")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*3\\s*\\-\\s*6\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("4",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("3456", binaryResponse.getBody());
+ assertEquals("3456", string(binaryResponse));
// Range 9-9
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes= 9 - 9")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
assertTrue(binaryResponse.getHeaders().containsKey("content-range"));
assertTrue(binaryResponse.getHeaders().getFirst("content-range").matches("^\\s*9\\s*\\-\\s*9\\s*/\\s*(10|\\*)\\s*$"));
assertEquals("1",
binaryResponse.getHeaders().getFirst("content-length"));
- assertEquals("9", binaryResponse.getBody());
+ assertEquals("9", string(binaryResponse));
}
@Test
@@ -947,14 +919,14 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}"))
+ HttpResponse<InputStream> binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=0,-1 , 2-2, 3-6")
- .asString();
+ .asBinary();
assertEquals(206, binaryResponse.getStatus());
String contentType =
binaryResponse.getHeaders().getFirst("content-type");
@@ -977,60 +949,60 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
// Unknown range unit = elephant
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}"))
+ HttpResponse<InputStream> binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "elephant=0-9")
- .asString();
+ .asBinary();
assertNotEquals(206, binaryResponse.getStatus());
assertNotEquals(500, binaryResponse.getStatus());
// Invalid range header
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "this is not correct")
- .asString();
+ .asBinary();
assertNotEquals(206, binaryResponse.getStatus());
assertNotEquals(500, binaryResponse.getStatus());
// Missing range unit
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "0")
- .asString();
+ .asBinary();
assertNotEquals(206, binaryResponse.getStatus());
assertNotEquals(500, binaryResponse.getStatus());
// Range limit greater than file size
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=0-1000")
- .asString();
+ .asBinary();
assertNotEquals(206, binaryResponse.getStatus());
assertNotEquals(500, binaryResponse.getStatus());
// Range start greater than end
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=9-8")
- .asString();
+ .asBinary();
assertNotEquals(206, binaryResponse.getStatus());
assertNotEquals(500, binaryResponse.getStatus());
// One bad range will "break" all ranges
- binaryResponse = get(resource("/binaries/{binaryId}"))
+ binaryResponse = get("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
.header("Range", "bytes=0, -1, 10000")
- .asString();
+ .asBinary();
assertNotEquals(206, binaryResponse.getStatus());
assertNotEquals(500, binaryResponse.getStatus());
}
@@ -1045,189 +1017,189 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response =
get(resource("/revisions/last/tree/node")).basicAuth("admin", "admin").asJson();
- String binaryId = getStringPropertyValue(response, "binary");
+ HttpResponse<InputStream> response =
get("/revisions/last/tree/node").basicAuth("admin", "admin").asBinary();
+ String binaryId = getStringPropertyValue(json(response), "binary");
// Offset = 0
- HttpResponse<String> binaryResponse =
head(resource("/binaries/{binaryId}"))
+ HttpResponse<InputStream> binaryResponse = head("/binaries/{binaryId}")
.basicAuth("admin", "admin")
.routeParam("binaryId", binaryId)
- .asString();
+ .asBinary();
assertEquals(200, binaryResponse.getStatus());
assertEquals("bytes",
binaryResponse.getHeaders().getFirst("accept-ranges"));
}
@Test
public void testExistsBinaryWithInvalidId() throws Exception {
- HttpResponse<String> response =
head(resource("/binaries/any")).basicAuth("admin", "admin").asString();
+ HttpResponse<InputStream> response =
head("/binaries/any").basicAuth("admin", "admin").asBinary();
assertEquals(404, response.getStatus());
}
@Test
public void testExistsBinaryWithoutAuthentication() throws Exception {
- HttpResponse<String> response =
head(resource("/binaries/any")).asString();
+ HttpResponse<InputStream> response = head("/binaries/any").asBinary();
assertEquals(401, response.getStatus());
}
@Test
public void testCreateBinary() throws Exception {
- HttpResponse<JsonNode> response =
post(resource("/binaries")).basicAuth("admin", "admin").body("body").asJson();
+ HttpResponse<InputStream> response =
post("/binaries").basicAuth("admin", "admin").body("body").asBinary();
assertEquals(201, response.getStatus());
- String binaryId = getBinaryId(response);
+ String binaryId = getBinaryId(json(response));
assertFalse(binaryId.isEmpty());
- HttpResponse<String> binaryResponse =
get(resource("/binaries/{binaryId}")).basicAuth("admin",
"admin").routeParam("binaryId", binaryId).asString();
+ HttpResponse<InputStream> binaryResponse =
get("/binaries/{binaryId}").basicAuth("admin", "admin").routeParam("binaryId",
binaryId).asBinary();
assertEquals(200, binaryResponse.getStatus());
- assertEquals("body", binaryResponse.getBody());
+ assertEquals("body", string(binaryResponse));
}
@Test
public void testCreateBinaryWithoutAuthentication() throws Exception {
- assertEquals(401,
post(resource("/binaries")).body("body").asJson().getStatus());
+ assertEquals(401,
post("/binaries").body("body").asString().getStatus());
}
@Test
public void testPatchLastRevisionAddNodeBinaryProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeBinaryProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeBinaryProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddNodeMultiBinaryProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiBinaryProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiBinaryProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddNodeBooleanProperty() throws Exception
{
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeBooleanProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeBooleanProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddNodeMultiBooleanProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiBooleanProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiBooleanProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddNodeDateProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeDateProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeDateProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddNodeMultiDateProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiDateProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiDateProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddDecimalProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeDecimalProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeDecimalProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiDecimalProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiDecimalProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiDecimalProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddDoubleProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeDoubleProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeDoubleProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiDoubleProperty() throws Exception
{
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiDoubleProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiDoubleProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddLongProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeLongProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeLongProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiLongProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiLongProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiLongProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddNameProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeNameProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeNameProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiNameProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiNameProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiNameProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddPathProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodePathProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodePathProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiPathProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiPathProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiPathProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddReferenceProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeReferenceProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeReferenceProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiReferenceProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiReferenceProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiReferenceProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddStringProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeStringProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeStringProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiStringProperty() throws Exception
{
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiStringProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiStringProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddUriProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeUriProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeUriProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiUriProperty() throws Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiUriProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiUriProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddWeakReferenceProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeWeakReferenceProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeWeakReferenceProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@Test
public void testPatchLastRevisionAddMultiWeakReferenceProperty() throws
Exception {
- HttpResponse<JsonNode> response =
patch(resource("/revisions/last/tree")).basicAuth("admin",
"admin").body(load("addNodeMultiWeakReferenceProperty.json")).asJson();
+ HttpResponse<InputStream> response =
patch("/revisions/last/tree").basicAuth("admin",
"admin").body(load("addNodeMultiWeakReferenceProperty.json")).asBinary();
assertEquals(201, response.getStatus());
}
@@ -1248,175 +1220,195 @@ public class RemoteServerIT extends OakB
root.commit();
- HttpResponse<JsonNode> response = get(resource("/revisions/last/tree"))
+ HttpResponse<InputStream> response = get("/revisions/last/tree")
.basicAuth("admin", "admin")
.queryString("query", "select name from nt:unstructured as
node where jcr:path like '/test/%'")
.queryString("language", "sql")
.queryString("offset", 0)
.queryString("limit", 10)
- .asJson();
+ .asBinary();
assertEquals(200, response.getStatus());
-
- assertTrue(getTotal(response) > 0);
-
- List<String> columns = getStringArray(response, "columns");
+ JsonNode body = json(response);
+ assertTrue(hasTotal(body));
+ List<String> columns = getStringArray(body, "columns");
assertTrue(columns.contains("name"));
assertTrue(columns.contains("jcr:path"));
-
- List<String> selectors = getStringArray(response, "selectors");
+ List<String> selectors = getStringArray(body, "selectors");
assertTrue(selectors.contains("node"));
}
@Test
public void testSearchLastRevisionWithoutAuthentication() throws Exception
{
- HttpResponse<JsonNode> response = get(resource("/revisions/last/tree"))
+ HttpResponse<InputStream> response = get("/revisions/last/tree")
.queryString("query", "select name from nt:unstructured as
node where jcr:path like '/test/%'")
.queryString("language", "sql")
.queryString("offset", 0)
.queryString("limit", 10)
- .asJson();
+ .asBinary();
assertEquals(401, response.getStatus());
}
@Test
public void testSearchLastRevisionWithoutQuery() throws Exception {
- HttpResponse<JsonNode> response = get(resource("/revisions/last/tree"))
+ HttpResponse<InputStream> response = get("/revisions/last/tree")
.basicAuth("admin", "admin")
.queryString("language", "sql")
.queryString("offset", 0)
.queryString("limit", 10)
- .asJson();
+ .asBinary();
assertEquals(400, response.getStatus());
}
@Test
public void testSearchLastRevisionWithoutLanguage() throws Exception {
- HttpResponse<JsonNode> response = get(resource("/revisions/last/tree"))
+ HttpResponse<InputStream> response = get("/revisions/last/tree")
.basicAuth("admin", "admin")
.queryString("query", "select name from nt:unstructured as
node where jcr:path like '/test/%'")
.queryString("offset", 0)
.queryString("limit", 10)
- .asJson();
+ .asBinary();
assertEquals(400, response.getStatus());
}
@Test
public void testSearchLastRevisionWithoutOffset() throws Exception {
- HttpResponse<JsonNode> response = get(resource("/revisions/last/tree"))
+ HttpResponse<InputStream> response = get("/revisions/last/tree")
.basicAuth("admin", "admin")
.queryString("query", "select name from nt:unstructured as
node where jcr:path like '/test/%'")
.queryString("language", "sql")
.queryString("limit", 10)
- .asJson();
+ .asBinary();
assertEquals(400, response.getStatus());
}
@Test
public void testSearchLastRevisionWithoutLimit() throws Exception {
- HttpResponse<JsonNode> response = get(resource("/revisions/last/tree"))
+ HttpResponse<InputStream> response = get("/revisions/last/tree")
.basicAuth("admin", "admin")
.queryString("query", "select name from nt:unstructured as
node where jcr:path like '/test/%'")
.queryString("language", "sql")
.queryString("offset", 0)
- .asJson();
+ .asBinary();
assertEquals(400, response.getStatus());
}
- private String getRevision(HttpResponse<JsonNode> response) {
- // return response.revision
- throw new UnsupportedOperationException("not implemented");
+ private String resource(String path) {
+ return "http://localhost:" + port + path;
+ }
+
+ private GetRequest get(String path) {
+ return Unirest.get(resource(path));
}
- private boolean getHasMoreChildren(HttpResponse<JsonNode> response) {
- // return response.hasMoreChildren
- throw new UnsupportedOperationException("not implemented");
+ private GetRequest head(String path) {
+ return Unirest.head(resource(path));
}
- private boolean hasChild(HttpResponse<JsonNode> response, String name) {
- // return name in response.children
- throw new UnsupportedOperationException("not implemented");
+ private HttpRequestWithBody patch(String path) {
+ return Unirest.patch(resource(path));
}
- private boolean hasNullChild(HttpResponse<JsonNode> response, String name)
{
- // return response.children[name] === null
- throw new UnsupportedOperationException("not implemented");
+ private HttpRequestWithBody post(String path) {
+ return Unirest.post(resource(path));
}
- private boolean hasNullGrandChild(HttpResponse<JsonNode> response, String
child, String grandChild) {
- // return response.children[child].children[grandChild] == null
- throw new UnsupportedOperationException("not implemented");
+ private JsonNode json(HttpResponse<?> response) throws Exception {
+ return new ObjectMapper().readTree(response.getRawBody());
}
- private boolean hasProperty(HttpResponse<JsonNode> response, String name) {
- // return name in response.properties
- throw new UnsupportedOperationException("not implemented");
+ private String string(HttpResponse<?> response) throws Exception {
+ return new String(ByteStreams.toByteArray(response.getRawBody()),
Charsets.UTF_8);
}
- private String getPropertyType(HttpResponse<JsonNode> response, String
name) {
- // return response.properties[name].type
- throw new UnsupportedOperationException("not implemented");
+ private String getRevision(JsonNode response) throws Exception {
+ return response.get("revision").asText();
}
- private String getStringPropertyValue(HttpResponse<JsonNode> response,
String name) {
- // return response.properties[name].value
- throw new UnsupportedOperationException("not implemented");
+ private boolean getHasMoreChildren(JsonNode response) throws Exception {
+ return response.get("hasMoreChildren").asBoolean();
}
- private String getStringPropertyValue(HttpResponse<JsonNode> response,
String name, int index) {
- // return response.properties[name].value[index]
- throw new UnsupportedOperationException("not implemented");
+ private boolean hasChild(JsonNode response, String name) throws Exception {
+ return response.get("children").has(name);
}
- private long getLongPropertyValue(HttpResponse<JsonNode> response, String
name) {
- // return response.properties[name].type
- throw new UnsupportedOperationException("not implemented");
+ private boolean hasNullChild(JsonNode response, String name) throws
Exception {
+ return response.get("children").get(name).isNull();
}
- private long getLongPropertyValue(HttpResponse<JsonNode> response, String
name, int index) {
- // return response.properties[name].value[index]
- throw new UnsupportedOperationException("not implemented");
+ private boolean hasNullGrandChild(JsonNode response, String child, String
grandChild) throws Exception {
+ return
response.get("children").get(child).get("children").get(grandChild).isNull();
}
- private double getDoublePropertyValue(HttpResponse<JsonNode> response,
String name) {
- // return response.properties[name].type
- throw new UnsupportedOperationException("not implemented");
+ private boolean hasProperty(JsonNode response, String name) throws
Exception {
+ return response.get("properties").has(name);
}
- private double getDoublePropertyValue(HttpResponse<JsonNode> response,
String name, int index) {
- // return response.properties[name].value[index]
- throw new UnsupportedOperationException("not implemented");
+ private String getPropertyType(JsonNode response, String name) throws
Exception {
+ return response.get("properties").get(name).get("type").asText();
}
- private boolean getBooleanPropertyValue(HttpResponse<JsonNode> response,
String name) {
- // return response.properties[name].type
- throw new UnsupportedOperationException("not implemented");
+ private JsonNode getPropertyValue(JsonNode response, String name) throws
Exception {
+ return response.get("properties").get(name).get("value");
}
- private boolean getBooleanPropertyValue(HttpResponse<JsonNode> response,
String name, int index) {
- // return response.properties[name].value[index]
- throw new UnsupportedOperationException("not implemented");
+ private JsonNode getPropertyValue(JsonNode response, String name, int
index) throws Exception {
+ return response.get("properties").get(name).get("value").get(index);
}
- private String getBinaryId(HttpResponse<JsonNode> response) {
- // return response.binaryId
- throw new UnsupportedOperationException("not implemented");
+ private String getStringPropertyValue(JsonNode response, String name)
throws Exception {
+ return getPropertyValue(response, name).asText();
}
- private long getTotal(HttpResponse<JsonNode> response) {
- // return response.total
- throw new UnsupportedOperationException("not implemented");
+ private String getStringPropertyValue(JsonNode response, String name, int
index) throws Exception {
+ return getPropertyValue(response, name, index).asText();
}
- private List<String> getStringArray(HttpResponse<JsonNode> response,
String name) {
- // return response[name]
- throw new UnsupportedOperationException("not implemented");
+ private long getLongPropertyValue(JsonNode response, String name) throws
Exception {
+ return getPropertyValue(response, name).asLong();
}
+ private long getLongPropertyValue(JsonNode response, String name, int
index) throws Exception {
+ return getPropertyValue(response, name, index).asLong();
+ }
+
+ private double getDoublePropertyValue(JsonNode response, String name)
throws Exception {
+ return getPropertyValue(response, name).asDouble();
+ }
+
+ private double getDoublePropertyValue(JsonNode response, String name, int
index) throws Exception {
+ return getPropertyValue(response, name, index).asDouble();
+ }
+
+ private boolean getBooleanPropertyValue(JsonNode response, String name)
throws Exception {
+ return getPropertyValue(response, name).asBoolean();
+ }
+
+ private boolean getBooleanPropertyValue(JsonNode response, String name,
int index) throws Exception {
+ return getPropertyValue(response, name, index).asBoolean();
+ }
+
+ private String getBinaryId(JsonNode response) throws Exception {
+ return response.get("binaryId").asText();
+ }
+
+ private boolean hasTotal(JsonNode response) throws Exception {
+ return response.has("total");
+ }
+
+ private List<String> getStringArray(JsonNode response, String name) throws
Exception {
+ List<String> result = new ArrayList<>();
+ JsonNode field = response.get(name);
+ for (int i = 0; i < field.size(); i++) {
+ result.add(field.get(i).asText());
+ }
+ return result;
+ }
}