Setup creating dory-vc in VirtualCorpusTestBase
instead of using SQL for testing
Change-Id: I0664742f4a6819412e64910c5b0cb2eeef450e12
diff --git a/Changes b/Changes
index 4ea3238..479bec1 100644
--- a/Changes
+++ b/Changes
@@ -5,6 +5,9 @@
- Setup system-vc in Initializator instead of using SQL for testing
- Setup creating nemo-vc in VirtualCorpusTestBase instead of using SQL
for testing
+- Setup creating dory-vc in VirtualCorpusTestBase instead of using SQL
+ for testing
+
# version 0.76
diff --git a/src/main/resources/db/test/V3.1__insert_virtual_corpus.sql b/src/main/resources/db/test/V3.1__insert_virtual_corpus.sql
index 6c22329..8c54862 100644
--- a/src/main/resources/db/test/V3.1__insert_virtual_corpus.sql
+++ b/src/main/resources/db/test/V3.1__insert_virtual_corpus.sql
@@ -61,10 +61,10 @@
-- virtual corpora
-INSERT INTO query(name, type, query_type, required_access, created_by, description, status, koral_query)
- VALUES ("dory-vc", "PRIVATE", "VIRTUAL_CORPUS", "FREE", "dory", "test vc", "experimental",
- '{"collection": { "@type": "koral:docGroup", "operands": [ { "@type": "koral:doc", "key": "corpusSigle", "match": "match:eq", "value": "GOE" }, { "@type": "koral:doc", "key": "creationDate", "match": "match:geq", "type": "type:date", "value": "1820" } ], "operation": "operation:and" }}');
-
+--INSERT INTO query(name, type, query_type, required_access, created_by, description, status, koral_query)
+-- VALUES ("dory-vc", "PRIVATE", "VIRTUAL_CORPUS", "FREE", "dory", "test vc", "experimental",
+-- '{"collection": { "@type": "koral:docGroup", "operands": [ { "@type": "koral:doc", "key": "corpusSigle", "match": "match:eq", "value": "GOE" }, { "@type": "koral:doc", "key": "creationDate", "match": "match:geq", "type": "type:date", "value": "1820" } ], "operation": "operation:and" }}');
+
INSERT INTO query(name, type, query_type, required_access, created_by, description, status, koral_query)
VALUES ("group-vc", "PROJECT", "VIRTUAL_CORPUS", "PUB", "dory", "test vc", "experimental",
'{"collection": { "@type": "koral:docGroup", "operands": [ { "@type": "koral:doc", "key": "corpusSigle", "match": "match:eq", "value": "GOE" }, { "@type": "koral:doc", "key": "creationDate", "match": "match:leq", "type": "type:date", "value": "1810" } ], "operation": "operation:and" }}');
diff --git a/src/test/java/de/ids_mannheim/korap/dao/VirtualCorpusDaoTest.java b/src/test/java/de/ids_mannheim/korap/dao/VirtualCorpusDaoTest.java
index 9deb763..8445a20 100644
--- a/src/test/java/de/ids_mannheim/korap/dao/VirtualCorpusDaoTest.java
+++ b/src/test/java/de/ids_mannheim/korap/dao/VirtualCorpusDaoTest.java
@@ -25,13 +25,17 @@
@Test
public void testListVCByType () throws KustvaktException {
+ createDoryVC();
+
List<QueryDO> vcList = dao.retrieveQueryByType(ResourceType.PUBLISHED,
null, QueryType.VIRTUAL_CORPUS);
assertEquals(1, vcList.size());
QueryDO vc = vcList.get(0);
- assertEquals(3, vc.getId());
+ assertEquals(2, vc.getId());
assertEquals("published-vc", vc.getName());
assertEquals("marlin", vc.getCreatedBy());
+
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
@@ -87,14 +91,18 @@
*/
@Test
public void retrieveVCByUserDory () throws KustvaktException {
+ createDoryVC();
+
List<QueryDO> virtualCorpora = dao.retrieveQueryByUser("dory",
QueryType.VIRTUAL_CORPUS);
assertEquals(3, virtualCorpora.size());
// ordered by id
Iterator<QueryDO> i = virtualCorpora.iterator();
- assertEquals("dory-vc", i.next().getName());
assertEquals("group-vc", i.next().getName());
assertEquals("system-vc", i.next().getName());
+ assertEquals("dory-vc", i.next().getName());
+
+ deleteVC("dory-vc", "dory", "dory");
}
/**
diff --git a/src/test/java/de/ids_mannheim/korap/rewrite/VirtualCorpusReferenceRewriteTest.java b/src/test/java/de/ids_mannheim/korap/rewrite/VirtualCorpusReferenceRewriteTest.java
index b813c31..c5ae661 100644
--- a/src/test/java/de/ids_mannheim/korap/rewrite/VirtualCorpusReferenceRewriteTest.java
+++ b/src/test/java/de/ids_mannheim/korap/rewrite/VirtualCorpusReferenceRewriteTest.java
@@ -22,12 +22,13 @@
import de.ids_mannheim.korap.init.NamedVCLoader;
import de.ids_mannheim.korap.util.QueryException;
import de.ids_mannheim.korap.utils.JsonUtils;
+import de.ids_mannheim.korap.web.controller.vc.VirtualCorpusTestBase;
import jakarta.ws.rs.core.Response;
/**
* @author margaretha
*/
-public class VirtualCorpusReferenceRewriteTest extends SpringJerseyTest {
+public class VirtualCorpusReferenceRewriteTest extends VirtualCorpusTestBase {
@Autowired
private NamedVCLoader vcLoader;
@@ -101,7 +102,6 @@
// assertEquals("match:eq", node.at("/operands/1/match").asText());
// assertEquals("corpusSigle", node.at("/operands/1/key").asText());
//
- System.out.println(node.toPrettyString());
node = node.at("/rewrites/0");
assertEquals("operation:override", node.at("/operation").asText());
assertEquals("koral:docGroupRef", node.at("/original/@type").asText());
@@ -151,6 +151,8 @@
@Test
public void testRewriteWithDoryVCRef ()
throws KustvaktException, IOException, QueryException {
+ createDoryVC();
+
Response response = target().path(API_VERSION).path("search")
.queryParam("q", "Fisch").queryParam("ql", "poliqarp")
.queryParam("cq", "referTo \"dory/dory-vc\"").request()
@@ -173,5 +175,6 @@
assertEquals("koral:docGroupRef", node.at("/original/@type").asText());
assertEquals("dory/dory-vc", node.at("/original/ref").asText());
+ deleteVC("dory-vc", "dory", "dory");
}
}
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2AccessTokenTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2AccessTokenTest.java
index d537584..5158b46 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2AccessTokenTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2AccessTokenTest.java
@@ -18,10 +18,11 @@
import de.ids_mannheim.korap.exceptions.StatusCodes;
import de.ids_mannheim.korap.utils.JsonUtils;
import de.ids_mannheim.korap.web.controller.usergroup.UserGroupTestBase;
+import de.ids_mannheim.korap.web.controller.vc.VirtualCorpusTestBase;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
-public class OAuth2AccessTokenTest extends UserGroupTestBase {
+public class OAuth2AccessTokenTest extends VirtualCorpusTestBase {
private String userAuthHeader;
@@ -61,6 +62,8 @@
@Test
public void testCustomScope () throws KustvaktException {
+ createDoryVC();
+
Response response = requestAuthorizationCode("code",
confidentialClientId, "", OAuth2Scope.VC_INFO.toString(), "",
userAuthHeader);
@@ -84,6 +87,8 @@
ACCESS_TOKEN_TYPE);
revokeToken(refreshToken, confidentialClientId, clientSecret,
REFRESH_TOKEN_TYPE);
+
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/SearchPublicMetadataTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/SearchPublicMetadataTest.java
index 5517c75..c3b9994 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/SearchPublicMetadataTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/SearchPublicMetadataTest.java
@@ -16,11 +16,12 @@
import de.ids_mannheim.korap.query.serialize.MetaQueryBuilder;
import de.ids_mannheim.korap.query.serialize.QuerySerializer;
import de.ids_mannheim.korap.utils.JsonUtils;
+import de.ids_mannheim.korap.web.controller.vc.VirtualCorpusTestBase;
import jakarta.ws.rs.client.Entity;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
-public class SearchPublicMetadataTest extends SpringJerseyTest {
+public class SearchPublicMetadataTest extends VirtualCorpusTestBase {
@Test
public void testSearchPublicMetadata () throws KustvaktException {
@@ -138,6 +139,7 @@
@Test
public void testSearchPublicMetadataWithPrivateVC ()
throws KustvaktException {
+ createDoryVC();
Response response = target().path(API_VERSION).path("search")
.queryParam("q", "Sonne").queryParam("ql", "poliqarp")
.queryParam("cq", "referTo \"dory/dory-vc\"")
@@ -147,5 +149,6 @@
assertEquals(StatusCodes.AUTHORIZATION_FAILED,
node.at("/errors/0/0").asInt());
assertEquals(node.at("/errors/0/2").asText(), "guest");
+ deleteVC("dory-vc", "dory", "dory");
}
}
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusControllerTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusControllerTest.java
index fad276a..9f53164 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusControllerTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusControllerTest.java
@@ -42,10 +42,12 @@
@Test
public void testDeleteVC_unauthorized () throws KustvaktException {
+ createDoryVC();
Response response = target().path(API_VERSION).path("vc").path("~dory")
.path("dory-vc").request()
.header(Attributes.AUTHORIZATION, authHeader).delete();
testResponseUnauthorized(response, testUser);
+ deleteVC("dory-vc", "dory", "dory");
}
private void testDeleteSystemVC (String vcName) throws KustvaktException {
@@ -405,6 +407,7 @@
@Test
public void testEditVC () throws KustvaktException {
+ createDoryVC();
// 1st edit
String json = "{\"description\": \"edited vc\"}";
editVC("dory", "dory", "dory-vc", json);
@@ -417,6 +420,7 @@
// check VC
node = retrieveVCInfo("dory", "dory", "dory-vc");
assertEquals(node.at("/description").asText(), "test vc");
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
@@ -438,6 +442,7 @@
@Test
public void testEditCorpusQuery ()
throws ProcessingException, KustvaktException {
+ createDoryVC();
JsonNode node = testRetrieveKoralQuery("dory", "dory-vc");
assertEquals(node.at("/collection/@type").asText(), "koral:docGroup");
assertEquals(node.at("/collection/operation").asText(),
@@ -463,6 +468,8 @@
assertEquals(node.at("/collection/operands/1/key").asText(),
"creationDate");
assertEquals(node.at("/collection/operands/1/value").asText(), "1820");
+
+ deleteVC("dory-vc", "dory", "dory");
}
private JsonNode testRetrieveKoralQuery (String username, String vcName)
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusInfoTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusInfoTest.java
index 552026f..94f4129 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusInfoTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusInfoTest.java
@@ -4,7 +4,6 @@
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.Test;
-import org.mozilla.javascript.Node;
import com.fasterxml.jackson.databind.JsonNode;
@@ -57,23 +56,27 @@
@Test
public void testRetrievePrivateVC ()
throws KustvaktException {
+ createDoryVC();
JsonNode node = retrieveVCInfo("dory", "dory", "dory-vc");
assertEquals(node.at("/name").asText(), "dory-vc");
assertEquals(ResourceType.PRIVATE.displayName(),
node.at("/type").asText());
testStatistics(node);
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
public void testRetrievePrivateVC_unauthorized ()
throws KustvaktException {
+ createDoryVC();
Response response = target().path(API_VERSION).path("vc").path("~dory")
.path("dory-vc").request()
.header(Attributes.AUTHORIZATION, HttpAuthorizationHandler
.createBasicAuthorizationHeaderValue(testUser, "pass"))
.get();
testResponseUnauthorized(response, testUser);
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
@@ -124,6 +127,7 @@
@Test
public void testRetrievePrivateVC_admin ()
throws KustvaktException {
+ createDoryVC();
Response response = target().path(API_VERSION).path("vc").path("~dory")
.path("dory-vc").request()
.header(Attributes.AUTHORIZATION, HttpAuthorizationHandler
@@ -132,8 +136,8 @@
assertEquals(Status.OK.getStatusCode(), response.getStatus());
String entity = response.readEntity(String.class);
JsonNode node = JsonUtils.readTree(entity);
- assertEquals(1, node.at("/id").asInt());
assertEquals(node.at("/name").asText(), "dory-vc");
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusListTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusListTest.java
index c3191f7..1effbc1 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusListTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusListTest.java
@@ -61,10 +61,12 @@
@Test
public void testListVCDory ()
throws ProcessingException, KustvaktException {
+ createDoryVC();
JsonNode node = testListOwnerVC("dory");
assertEquals(2, node.size());
node = listVC("dory");
assertEquals(3, node.size());
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusPublishedTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusPublishedTest.java
index a732de5..09ab24c 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusPublishedTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusPublishedTest.java
@@ -95,7 +95,8 @@
@Test
public void testMarlinPublishedVC () throws KustvaktException {
-
+ createDoryVC();
+
JsonNode node = testListOwnerVC("marlin");
assertEquals(2, node.size());
node = listVC("marlin");
@@ -123,6 +124,7 @@
assertEquals(0, node.size());
deleteGroupByName(marlinGroupName, "marlin");
+ deleteVC("dory-vc", "dory", "dory");
}
private String testSharePublishedVC (String vcName) throws KustvaktException {
@@ -187,7 +189,7 @@
// check VC type
node = testListOwnerVC("dory");
- JsonNode n = node.get(1);
+ JsonNode n = node.get(0);
assertEquals(ResourceType.PUBLISHED.displayName(),
n.get("type").asText());
@@ -205,7 +207,7 @@
editVC("dory", "dory", vcName, json);
node = testListOwnerVC("dory");
assertEquals(ResourceType.PROJECT.displayName(),
- node.get(1).get("type").asText());
+ node.get(0).get("type").asText());
testHiddenGroupNotFound(hiddenGroupName);
}
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusReferenceTest.java b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusReferenceTest.java
index ad0ba98..4dc67e7 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusReferenceTest.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusReferenceTest.java
@@ -161,6 +161,7 @@
@Test
public void testRefNotAuthorized () throws KustvaktException {
+ createDoryVC();
Response response = target().path(API_VERSION).path("search")
.queryParam("q", "[orth=der]").queryParam("ql", "poliqarp")
.queryParam("cq", "referTo \"dory/dory-vc\"").request().get();
@@ -169,6 +170,7 @@
assertEquals(StatusCodes.AUTHORIZATION_FAILED,
node.at("/errors/0/0").asInt());
assertEquals(node.at("/errors/0/2").asText(), "guest");
+ deleteVC("dory-vc", "dory", "dory");
}
@Test
diff --git a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusTestBase.java b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusTestBase.java
index 5826a62..27fecab 100644
--- a/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusTestBase.java
+++ b/src/test/java/de/ids_mannheim/korap/web/controller/vc/VirtualCorpusTestBase.java
@@ -55,6 +55,18 @@
createVC(authHeader, "nemo", "nemo-vc", vcJson);
};
+ protected void createDoryVC () throws KustvaktException {
+ String authHeader = HttpAuthorizationHandler
+ .createBasicAuthorizationHeaderValue("dory", "pass");
+
+ String vcJson = "{\"type\": \"PRIVATE\""
+ + ",\"queryType\": \"VIRTUAL_CORPUS\""
+ + ",\"status\":\"experimental\""
+ + ",\"corpusQuery\": \"corpusSigle=GOE AND creationDate since "
+ + "1820\"}";
+ createVC(authHeader, "dory", "dory-vc", vcJson);
+ };
+
protected void createVC (String authHeader, String username, String vcName,
String vcJson) throws KustvaktException {
diff --git a/src/test/resources/kustvakt-icc.conf b/src/test/resources/kustvakt-icc.conf
index 9714955..9e851c9 100644
--- a/src/test/resources/kustvakt-icc.conf
+++ b/src/test/resources/kustvakt-icc.conf
@@ -6,7 +6,7 @@
krill.index.commit.auto = 500
krill.index.relations.max = 100
# Directory path of virtual corpora to cache
-#krill.namedVC = vc
+krill.namedVC = vc
krill.test = true
# LDAP