Add incase-sensitivity tests for query reference.
Change-Id: I4d1d5f48a565c2bb93f7bb30c998e00e99e87c11
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceControllerTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceControllerTest.java
index a9981f0..6140954 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceControllerTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceControllerTest.java
@@ -28,6 +28,21 @@
private String system = "system";
+ private void testRetrieveQueryNotFound (String qName, String queryCreator,
+ String username, ResourceType resourceType)
+ throws KustvaktException {
+ Response response = target().path(API_VERSION).path("query")
+ .path("~" + queryCreator).path(qName).request()
+ .header(Attributes.AUTHORIZATION, HttpAuthorizationHandler
+ .createBasicAuthorizationHeaderValue(username, "pass"))
+ .get();
+ String entity = response.readEntity(String.class);
+ JsonNode node = JsonUtils.readTree(entity);
+ assertEquals(node.at("/errors/0/0").asInt(),
+ StatusCodes.NO_RESOURCE_FOUND);
+ assertEquals(Status.NOT_FOUND.getStatusCode(), response.getStatus());
+ }
+
private void testRetrieveQueryByName (String qName, String query,
String queryCreator, String username,
ResourceType resourceType) throws KustvaktException {
@@ -40,7 +55,7 @@
// System.out.println(entity);
assertEquals(Status.OK.getStatusCode(), response.getStatus());
JsonNode node = JsonUtils.readTree(entity);
- assertEquals(qName, node.at("/name").asText());
+ assertEquals(qName.toLowerCase(), node.at("/name").asText().toLowerCase());
assertEquals(resourceType.displayName(), node.at("/type").asText());
assertEquals(queryCreator, node.at("/createdBy").asText());
assertEquals(query, node.at("/query").asText());
@@ -76,8 +91,17 @@
assertEquals(Status.CREATED.getStatusCode(), response.getStatus());
testRetrieveQueryByName(qName, "der", testUser, testUser,
ResourceType.PRIVATE);
+// test incase-sensitivity
+ testRetrieveQueryByName(qName.toUpperCase(), "der", testUser, testUser,
+ ResourceType.PRIVATE);
testUpdateQuery(qName, testUser, testUser, ResourceType.PRIVATE);
+// test incase-sensitivity
+ testUpdateQuery(qName.toUpperCase(), testUser, testUser,
+ ResourceType.PRIVATE);
+
testDeleteQueryByName(qName, testUser, testUser);
+ testRetrieveQueryNotFound(qName, testUser, testUser,
+ ResourceType.PRIVATE);
}
@Test
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceSearchTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceSearchTest.java
index 27f3567..4c16881 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceSearchTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/QueryReferenceSearchTest.java
@@ -21,6 +21,9 @@
assertTrue(node.at("/matches").size() > 0);
}
*/
+// EM: Query reference in search is not yet implemented
+// referTo only expects vc references in the current implementation
+// q and ql are required parameters
public class QueryReferenceSearchTest {
/*@Test
public void testSearchWithVCRefEqual () throws KustvaktException {