diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2020-10-20 11:06:20 +0200 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2020-10-20 11:06:20 +0200 |
commit | c5e30c1a7e2039bed0da6c10e1a4216b5b165ae9 (patch) | |
tree | aada2c2bc682db4771cb1f914dc76abcaa069166 /vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java | |
parent | e698e639b67d89f374c7457d87c05012a242de75 (diff) |
Accept non-URL-encoded doc ids as last part of doc/v1 URL щ(ಥДಥщ)
Diffstat (limited to 'vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java')
-rw-r--r-- | vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java b/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java index ef5dc4a72dd..0295f9fa0dc 100644 --- a/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java +++ b/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java @@ -178,9 +178,9 @@ public class DocumentV1ApiTest { "/document/v1/{namespace}/{documentType}/docid/\\n" + "/document/v1/{namespace}/{documentType}/group/{group}/\\n" + "/document/v1/{namespace}/{documentType}/number/{number}/\\n" + - "/document/v1/{namespace}/{documentType}/docid/{docid}\\n" + - "/document/v1/{namespace}/{documentType}/group/{group}/{docid}\\n" + - "/document/v1/{namespace}/{documentType}/number/{number}/{docid}\"" + + "/document/v1/{namespace}/{documentType}/docid/{*}\\n" + + "/document/v1/{namespace}/{documentType}/group/{group}/{*}\\n" + + "/document/v1/{namespace}/{documentType}/number/{number}/{*}\"" + "}", response.readAll()); assertEquals("application/json; charset=UTF-8", response.getResponse().headers().getFirst("Content-Type")); assertEquals(404, response.getStatus()); @@ -293,10 +293,18 @@ public class DocumentV1ApiTest { "}", response.readAll()); assertEquals(200, response.getStatus()); - // GET with not encoded / in user specified part of document id is a 404 - access.session.expect((__, ___) -> { throw new AssertionError("Not supposed to happen"); }); + // GET with not encoded / in user specified part of document id is perfectly OK ... щ(ಥДಥщ) + access.session.expect((id, parameters) -> { + assertEquals(new DocumentId("id:space:music::one/two/three"), id); + assertEquals(parameters(), parameters); + parameters.responseHandler().get().handleResponse(new DocumentResponse(0)); + return new Result(Result.ResultType.SUCCESS, null); + }); response = driver.sendRequest("http://localhost/document/v1/space/music/docid/one/two/three"); - response.readAll(); // Must drain body. + assertSameJson("{" + + " \"pathId\": \"/document/v1/space/music/docid/one/two/three\"," + + " \"id\": \"id:space:music::one/two/three\"" + + "}", response.readAll()); assertEquals(404, response.getStatus()); // POST with a document payload is a document put operation. |