diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 9532d03..14254a2 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -18,10 +18,10 @@ jobs:
- name: "Setup Java"
uses: actions/setup-java@v1
with:
- java-version: 1.8
+ java-version: 11
- name: "Maven Tests"
- run: mvn clean test cobertura:cobertura jacoco:report coveralls:report -DdryRun=true
+ run: mvn clean test jacoco:report coveralls:report -DdryRun=true
- name: "Coverage Report"
uses: MikeEdgar/github-action@raw_coverage_file
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..5a534b1
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,62 @@
+# Settings.
+ARG USER_ID=3001
+ARG USER_NAME=iriifservice
+ARG HOME_DIR=/$USER_NAME
+ARG SOURCE_DIR=$HOME_DIR/source
+
+# Maven stage.
+FROM maven:3-openjdk-11-slim as maven
+ARG USER_ID
+ARG USER_NAME
+ARG HOME_DIR
+ARG SOURCE_DIR
+
+# Create the group (use a high ID to attempt to avoid conflits).
+RUN groupadd -g $USER_ID $USER_NAME
+
+# Create the user (use a high ID to attempt to avoid conflits).
+RUN useradd -d $HOME_DIR -m -u $USER_ID -g $USER_ID $USER_NAME
+
+# Update the system.
+RUN apt-get update && apt-get upgrade -y
+
+# Set deployment directory.
+WORKDIR $SOURCE_DIR
+
+# Copy files over.
+COPY ./pom.xml ./pom.xml
+COPY ./src ./src
+
+# Assign file permissions.
+RUN chown -R ${USER_ID}:${USER_ID} ${SOURCE_DIR}
+
+# Login as user.
+USER $USER_NAME
+
+# Build.
+RUN mvn package -Pjar -DskipTests=true
+
+# Switch to Normal JRE Stage.
+FROM openjdk:11-jre-slim
+ARG USER_ID
+ARG USER_NAME
+ARG HOME_DIR
+ARG SOURCE_DIR
+
+# Create the group (use a high ID to attempt to avoid conflits).
+RUN groupadd -g $USER_ID $USER_NAME
+
+# Create the user (use a high ID to attempt to avoid conflits).
+RUN useradd -d $HOME_DIR -m -u $USER_ID -g $USER_ID $USER_NAME
+
+# Login as user.
+USER $USER_NAME
+
+# Set deployment directory.
+WORKDIR $HOME_DIR
+
+# Copy over the built artifact from the maven image.
+COPY --from=maven $SOURCE_DIR/target/ROOT.jar ./iriif.jar
+
+# Run java command.
+CMD ["java", "-jar", "./iriif.jar"]
diff --git a/pom.xml b/pom.xml
index 48d7cab..8d81a72 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,6 @@
edu.tamu
ir-iiif-service
0.5.5
- war
IR IIIF Service
@@ -16,23 +15,44 @@
edu.tamu.weaver
webservice-parent
- 2.0.3
+ 2.1.1-RC8
+
edu.tamu.iiif.IrIiifServiceInitializer
UTF-8
UTF-8
- 1.8
- 3.2.0
+ 11
+ 4.4.0
3.2.6
+ ${java.version}
+ ${java.version}
+ 2.22.2
classpath:/config/
+ war
+ ${maven.packaging}
+
+
+
+ war
+
+ war
+
+
+
+ jar
+
+ jar
+
+
+
+
-
edu.tamu.weaver
messaging
@@ -52,6 +72,12 @@
org.springframework.boot
spring-boot-starter-data-redis
+
+
+ io.lettuce
+ lettuce-core
+
+
@@ -78,28 +104,38 @@
- org.springframework.restdocs
- spring-restdocs-mockmvc
- test
+ org.springframework.boot
+ spring-boot-configuration-processor
+ true
- org.springframework.security
- spring-security-test
- test
+ commons-validator
+ commons-validator
+ 1.7
- it.ozimov
- embedded-redis
- 0.7.2
- test
+ commons-io
+ commons-io
+ 2.11.0
- commons-validator
- commons-validator
- 1.6
+ org.apache.commons
+ commons-text
+ 1.9
+
+
+
+ com.google.guava
+ guava
+ 31.1-jre
+
+
+
+ redis.clients
+ jedis
@@ -107,6 +143,16 @@
apache-jena-libs
pom
${jena-libs.version}
+
+
+ commons-io
+ commons-io
+
+
+ com.google.guava
+ guava
+
+
@@ -122,9 +168,44 @@
- org.springframework.boot
- spring-boot-configuration-processor
- true
+ org.springframework.restdocs
+ spring-restdocs-mockmvc
+ test
+
+
+
+ org.springframework.security
+ spring-security-test
+ test
+
+
+
+ it.ozimov
+ embedded-redis
+ 0.7.3
+ test
+
+
+ commons-io
+ commons-io
+
+
+ com.google.guava
+ guava
+
+
+
+
+
+ org.mockito
+ mockito-core
+ test
+
+
+
+ org.mockito
+ mockito-junit-jupiter
+ test
@@ -132,6 +213,18 @@
ROOT
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ ${maven-plugins.version}
+
+
+
+ org.apache.maven.plugins
+ maven-failsafe-plugin
+ ${maven-plugins.version}
+
+
org.apache.maven.plugins
maven-compiler-plugin
@@ -145,6 +238,13 @@
org.springframework.boot
spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+
@@ -156,25 +256,6 @@
-
- org.codehaus.mojo
- cobertura-maven-plugin
-
- true
-
- true
-
- java.util.logging.*
-
-
-
- html
- xml
-
- true
-
-
-
org.jacoco
jacoco-maven-plugin
@@ -194,6 +275,13 @@
+
+
+ javax.xml.bind
+ jaxb-api
+ 2.3.1
+
+
@@ -268,7 +356,7 @@
org.apache.maven.plugins
maven-project-info-reports-plugin
- 2.7
+ 3.2.2
false
diff --git a/src/main/java/edu/tamu/iiif/IrIiifServiceInitializer.java b/src/main/java/edu/tamu/iiif/IrIiifServiceInitializer.java
index b379936..96df951 100644
--- a/src/main/java/edu/tamu/iiif/IrIiifServiceInitializer.java
+++ b/src/main/java/edu/tamu/iiif/IrIiifServiceInitializer.java
@@ -3,7 +3,7 @@
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
-import org.springframework.boot.web.support.SpringBootServletInitializer;
+import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
/**
* Entry point to the IR IIIF service initializer.
diff --git a/src/main/java/edu/tamu/iiif/config/WebMvcConfig.java b/src/main/java/edu/tamu/iiif/config/WebMvcConfig.java
index 8a744a1..7bd79e3 100644
--- a/src/main/java/edu/tamu/iiif/config/WebMvcConfig.java
+++ b/src/main/java/edu/tamu/iiif/config/WebMvcConfig.java
@@ -4,12 +4,12 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import edu.tamu.iiif.controller.resolver.ManifestRequestArgumentResolver;
@Configuration
-public class WebMvcConfig extends WebMvcConfigurerAdapter {
+public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addArgumentResolvers(List argumentResolvers) {
diff --git a/src/main/java/edu/tamu/iiif/constants/Constants.java b/src/main/java/edu/tamu/iiif/constants/Constants.java
index f55c1af..b966663 100644
--- a/src/main/java/edu/tamu/iiif/constants/Constants.java
+++ b/src/main/java/edu/tamu/iiif/constants/Constants.java
@@ -18,11 +18,11 @@ public class Constants {
public final static String IMAGE_IDENTIFIER = "image";
// Manifest Controller Mappings
- public final static String COLLECTION_MAPPING = "/" + COLLECTION_IDENTIFIER + "/**/*";
- public final static String PRESENTATION_MAPPING = "/" + PRESENTATION_IDENTIFIER + "/**/*";
- public final static String SEQUENCE_MAPPING = "/" + SEQUENCE_IDENTIFIER + "/**/*";
- public final static String CANVAS_MAPPING = "/" + CANVAS_IDENTIFIER + "/**/*";
- public final static String IMAGE_MAPPING = "/" + IMAGE_IDENTIFIER + "/**/*";
+ public final static String COLLECTION_MAPPING = "/" + COLLECTION_IDENTIFIER + "/**";
+ public final static String PRESENTATION_MAPPING = "/" + PRESENTATION_IDENTIFIER + "/**";
+ public final static String SEQUENCE_MAPPING = "/" + SEQUENCE_IDENTIFIER + "/**";
+ public final static String CANVAS_MAPPING = "/" + CANVAS_IDENTIFIER + "/**";
+ public final static String IMAGE_MAPPING = "/" + IMAGE_IDENTIFIER + "/**";
// Fedora
public final static String FEDORA_FCR_METADATA = "/fcr:metadata";
diff --git a/src/main/java/edu/tamu/iiif/controller/AbstractManifestController.java b/src/main/java/edu/tamu/iiif/controller/AbstractManifestController.java
index ce5e474..d854b76 100644
--- a/src/main/java/edu/tamu/iiif/controller/AbstractManifestController.java
+++ b/src/main/java/edu/tamu/iiif/controller/AbstractManifestController.java
@@ -9,7 +9,7 @@
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
-import org.apache.commons.lang3.StringEscapeUtils;
+import org.apache.commons.text.StringEscapeUtils;
import org.springframework.beans.factory.annotation.Autowired;
import edu.tamu.iiif.service.ManifestService;
diff --git a/src/main/java/edu/tamu/iiif/service/AbstractManifestService.java b/src/main/java/edu/tamu/iiif/service/AbstractManifestService.java
index 05d69cc..62a37ee 100644
--- a/src/main/java/edu/tamu/iiif/service/AbstractManifestService.java
+++ b/src/main/java/edu/tamu/iiif/service/AbstractManifestService.java
@@ -20,11 +20,6 @@
import javax.annotation.PostConstruct;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.MapperFeature;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
-
import org.apache.jena.rdf.model.Model;
import org.apache.jena.rdf.model.Property;
import org.apache.jena.rdf.model.RDFNode;
@@ -39,6 +34,11 @@
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.MapperFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializationFeature;
+
import de.digitalcollections.iiif.presentation.model.api.v2.Canvas;
import de.digitalcollections.iiif.presentation.model.api.v2.Image;
import de.digitalcollections.iiif.presentation.model.api.v2.ImageResource;
@@ -109,6 +109,8 @@ public abstract class AbstractManifestService implements ManifestService {
@PostConstruct
protected void init() {
mapper.enable(SerializationFeature.INDENT_OUTPUT);
+
+ // This deprecated use cannot be removed until IiifPresentationApiObjectMapper() exposes builder().
mapper.enable(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY);
}
diff --git a/src/main/java/edu/tamu/iiif/service/RedisResourceResolver.java b/src/main/java/edu/tamu/iiif/service/RedisResourceResolver.java
index 181f050..f7f4165 100644
--- a/src/main/java/edu/tamu/iiif/service/RedisResourceResolver.java
+++ b/src/main/java/edu/tamu/iiif/service/RedisResourceResolver.java
@@ -40,15 +40,15 @@ public String create(String url) throws URISyntaxException {
}
public String resolve(String id) throws NotFoundException {
- if (redisResourceRepo.exists(id)) {
- return redisResourceRepo.findOne(id).getUrl();
+ if (redisResourceRepo.existsById(id)) {
+ return redisResourceRepo.findById(id).get().getUrl();
}
throw new NotFoundException(String.format("Resource with id %s not found!", id));
}
public void remove(String id) throws NotFoundException {
- if (redisResourceRepo.exists(id)) {
- redisResourceRepo.delete(id);
+ if (redisResourceRepo.existsById(id)) {
+ redisResourceRepo.deleteById(id);
} else {
throw new NotFoundException(String.format("Resource with id %s not found!", id));
}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 8bd9323..2bb06c0 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -3,11 +3,11 @@ server:
port: 9000
logging:
- file: ir-iiif-service.log
level:
edu.tamu.iiif: INFO
org.springframework: INFO
- path: /var/logs/iiif
+ file:
+ name: /var/logs/iiif/ir-iiif-service.log
# to enable messaging, include profile weaver-messaging and update activemq broker-url, username and password
diff --git a/src/test/java/edu/tamu/iiif/IrIiifServiceInitializerTest.java b/src/test/java/edu/tamu/iiif/IrIiifServiceInitializerTest.java
index d5ef46a..6514b82 100644
--- a/src/test/java/edu/tamu/iiif/IrIiifServiceInitializerTest.java
+++ b/src/test/java/edu/tamu/iiif/IrIiifServiceInitializerTest.java
@@ -1,18 +1,15 @@
package edu.tamu.iiif;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.constants.Constants;
-@RunWith(SpringRunner.class)
@SpringBootTest(classes = IrIiifServiceInitializer.class)
public class IrIiifServiceInitializerTest {
diff --git a/src/test/java/edu/tamu/iiif/config/model/AdminConfigTest.java b/src/test/java/edu/tamu/iiif/config/model/AdminConfigTest.java
index 51f61cb..cca9422 100644
--- a/src/test/java/edu/tamu/iiif/config/model/AdminConfigTest.java
+++ b/src/test/java/edu/tamu/iiif/config/model/AdminConfigTest.java
@@ -1,17 +1,17 @@
package edu.tamu.iiif.config.model;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.ArrayList;
import java.util.List;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.config.model.AdminConfig.Credentials;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class AdminConfigTest {
@Test
diff --git a/src/test/java/edu/tamu/iiif/config/model/DSpaceRdfIiiifConfigTest.java b/src/test/java/edu/tamu/iiif/config/model/DSpaceRdfIiiifConfigTest.java
index b31505f..b7e15b7 100644
--- a/src/test/java/edu/tamu/iiif/config/model/DSpaceRdfIiiifConfigTest.java
+++ b/src/test/java/edu/tamu/iiif/config/model/DSpaceRdfIiiifConfigTest.java
@@ -1,15 +1,15 @@
package edu.tamu.iiif.config.model;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.ArrayList;
import java.util.List;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class DSpaceRdfIiiifConfigTest {
@Test
diff --git a/src/test/java/edu/tamu/iiif/config/model/FedoraPcdmIiiifConfigTest.java b/src/test/java/edu/tamu/iiif/config/model/FedoraPcdmIiiifConfigTest.java
index 7e850bf..1b9dcd7 100644
--- a/src/test/java/edu/tamu/iiif/config/model/FedoraPcdmIiiifConfigTest.java
+++ b/src/test/java/edu/tamu/iiif/config/model/FedoraPcdmIiiifConfigTest.java
@@ -1,15 +1,15 @@
package edu.tamu.iiif.config.model;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.ArrayList;
import java.util.List;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class FedoraPcdmIiiifConfigTest {
@Test
diff --git a/src/test/java/edu/tamu/iiif/config/model/ResolverConfigTest.java b/src/test/java/edu/tamu/iiif/config/model/ResolverConfigTest.java
index 519e95c..1b4e6ac 100644
--- a/src/test/java/edu/tamu/iiif/config/model/ResolverConfigTest.java
+++ b/src/test/java/edu/tamu/iiif/config/model/ResolverConfigTest.java
@@ -1,15 +1,15 @@
package edu.tamu.iiif.config.model;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.config.model.AdminConfig.Credentials;
import edu.tamu.iiif.config.model.ResolverConfig.ResolverType;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class ResolverConfigTest {
@Test
diff --git a/src/test/java/edu/tamu/iiif/controller/AbstractManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/AbstractManifestControllerTest.java
index fb26bc3..519949e 100644
--- a/src/test/java/edu/tamu/iiif/controller/AbstractManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/AbstractManifestControllerTest.java
@@ -1,12 +1,9 @@
package edu.tamu.iiif.controller;
-import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.restdocs.AutoConfigureRestDocs;
-import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
-@RunWith(SpringRunner.class)
@AutoConfigureRestDocs(outputDir = "target/generated-snippets")
public abstract class AbstractManifestControllerTest implements ManifestControllerTest {
diff --git a/src/test/java/edu/tamu/iiif/controller/ManifestBuilderTest.java b/src/test/java/edu/tamu/iiif/controller/ManifestBuilderTest.java
index 6e99611..f2ee0d1 100644
--- a/src/test/java/edu/tamu/iiif/controller/ManifestBuilderTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/ManifestBuilderTest.java
@@ -1,17 +1,17 @@
package edu.tamu.iiif.controller;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.mock;
import java.util.Arrays;
import javax.servlet.http.HttpServletResponse;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class ManifestBuilderTest {
@Test
@@ -19,11 +19,11 @@ public void testManifestBuilder() {
HttpServletResponse response = mock(HttpServletResponse.class);
ManifestBuilder builder = ManifestBuilder.build(response, ManifestRequest.of("test", false, Arrays.asList(new String[] { "allow" }), Arrays.asList(new String[] { "disallow" })));
ManifestRequest request = builder.getRequest();
- Assert.assertEquals(response, builder.getResponse());
- Assert.assertEquals("test", request.getContext());
- Assert.assertEquals(false, request.isUpdate());
- Assert.assertEquals("allow", request.getAllowed());
- Assert.assertEquals("disallow", request.getDisallowed());
+ assertEquals(response, builder.getResponse());
+ assertEquals("test", request.getContext());
+ assertEquals(false, request.isUpdate());
+ assertEquals("allow", request.getAllowed());
+ assertEquals("disallow", request.getDisallowed());
}
}
diff --git a/src/test/java/edu/tamu/iiif/controller/ManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/ManifestControllerTest.java
index 0d72ff6..b39f191 100644
--- a/src/test/java/edu/tamu/iiif/controller/ManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/ManifestControllerTest.java
@@ -1,10 +1,7 @@
package edu.tamu.iiif.controller;
-import org.junit.Test;
-
public interface ManifestControllerTest {
- @Test
public void testGetManifest() throws Exception;
}
diff --git a/src/test/java/edu/tamu/iiif/controller/ManifestRequestTest.java b/src/test/java/edu/tamu/iiif/controller/ManifestRequestTest.java
index cba93dd..356b946 100644
--- a/src/test/java/edu/tamu/iiif/controller/ManifestRequestTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/ManifestRequestTest.java
@@ -1,29 +1,30 @@
package edu.tamu.iiif.controller;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
import java.util.Arrays;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class ManifestRequestTest {
@Test
public void testManifestRequest() {
ManifestRequest request = ManifestRequest.of("test", false);
- Assert.assertEquals("test", request.getContext());
- Assert.assertEquals(false, request.isUpdate());
+ assertEquals("test", request.getContext());
+ assertEquals(false, request.isUpdate());
}
@Test
public void testManifestRequestAdvanced() {
ManifestRequest request = ManifestRequest.of("test", false, Arrays.asList(new String[] { "allow" }), Arrays.asList(new String[] { "disallow" }));
- Assert.assertEquals("test", request.getContext());
- Assert.assertEquals(false, request.isUpdate());
- Assert.assertEquals("allow", request.getAllowed());
- Assert.assertEquals("disallow", request.getDisallowed());
+ assertEquals("test", request.getContext());
+ assertEquals(false, request.isUpdate());
+ assertEquals("allow", request.getAllowed());
+ assertEquals("disallow", request.getDisallowed());
}
}
diff --git a/src/test/java/edu/tamu/iiif/controller/ResourceControllerTest.java b/src/test/java/edu/tamu/iiif/controller/ResourceControllerTest.java
index c951c0d..48ae2dd 100644
--- a/src/test/java/edu/tamu/iiif/controller/ResourceControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/ResourceControllerTest.java
@@ -1,6 +1,6 @@
package edu.tamu.iiif.controller;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
@@ -16,25 +16,29 @@
import java.net.URISyntaxException;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.restdocs.AutoConfigureRestDocs;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.security.test.context.support.WithMockUser;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.exception.NotFoundException;
import edu.tamu.iiif.model.RedisResource;
import edu.tamu.iiif.service.ResourceResolver;
-@RunWith(SpringRunner.class)
-@WebMvcTest(value = ResourceController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = ResourceController.class)
@AutoConfigureRestDocs(outputDir = "target/generated-snippets")
public class ResourceControllerTest {
@@ -58,25 +62,16 @@ public class ResourceControllerTest {
private final String invalidUrl = "fubar";
- @Before
+ @BeforeEach
public void setup() throws URISyntaxException, NotFoundException {
- try {
- when(resourceResolver.resolve(mockResource.getId())).thenReturn(mockResource.getUrl());
- when(resourceResolver.lookup(mockResource.getUrl())).thenReturn(mockResource.getId());
- when(resourceResolver.create(mockResource.getUrl())).thenReturn(mockResource.getId());
- when(resourceResolver.create(mockResourceNotExistYet.getUrl())).thenReturn(mockResourceNotExistYet.getId());
- } catch (URISyntaxException e) {
- e.printStackTrace();
- } catch (NotFoundException e) {
- e.printStackTrace();
- }
+ when(resourceResolver.resolve(mockResource.getId())).thenReturn(mockResource.getUrl());
+ when(resourceResolver.lookup(mockResource.getUrl())).thenReturn(mockResource.getId());
+ when(resourceResolver.create(mockResource.getUrl())).thenReturn(mockResource.getId());
+ when(resourceResolver.create(mockResourceNotExistYet.getUrl())).thenReturn(mockResourceNotExistYet.getId());
when(resourceResolver.resolve(mockResourceNotExist.getId())).thenThrow(new NotFoundException(resourceWithIdNotFound));
-
when(resourceResolver.lookup(mockResourceNotExist.getUrl())).thenThrow(new NotFoundException(resourceWithUrlNotFound));
-
when(resourceResolver.lookup(mockResourceNotExistYet.getUrl())).thenThrow(new NotFoundException(resourceWithUrlNotFoundYet));
-
when(resourceResolver.lookup(invalidUrl)).thenThrow(new URISyntaxException(invalidUrl, "Not a valid URL"));
doThrow(new NotFoundException(resourceWithIdNotFound)).when(resourceResolver).remove(mockResourceNotExist.getId());
@@ -143,6 +138,7 @@ public void testGetResourceIdNotFound() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testPutResource() throws Exception {
RequestBuilder requestBuilder = put("/resources").param("uri", mockResourceNotExistYet.getUrl()).accept(TEXT_PLAIN);
RestDocumentationResultHandler restDocHandler = document("resources/putResource", requestParameters(parameterWithName("uri").description("The resource URI.")));
@@ -152,6 +148,7 @@ public void testPutResource() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testPutExistingResource() throws Exception {
RequestBuilder requestBuilder = put("/resources").param("uri", mockResource.getUrl()).accept(TEXT_PLAIN);
RestDocumentationResultHandler restDocHandler = document("resources/putResource", requestParameters(parameterWithName("uri").description("The resource URI.")));
@@ -161,6 +158,7 @@ public void testPutExistingResource() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testPostResource() throws Exception {
RequestBuilder requestBuilder = post("/resources").param("uri", mockResourceNotExistYet.getUrl()).accept(TEXT_PLAIN);
RestDocumentationResultHandler restDocHandler = document("resources/postResource", requestParameters(parameterWithName("uri").description("The resource URI.")));
@@ -170,6 +168,7 @@ public void testPostResource() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testPostExistingResource() throws Exception {
RequestBuilder requestBuilder = post("/resources").param("uri", mockResource.getUrl()).accept(TEXT_PLAIN);
RestDocumentationResultHandler restDocHandler = document("resources/postResource", requestParameters(parameterWithName("uri").description("The resource URI.")));
@@ -179,6 +178,7 @@ public void testPostExistingResource() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testPostResourceInvalidUrl() throws Exception {
RequestBuilder requestBuilder = post("/resources").param("uri", invalidUrl).accept(TEXT_PLAIN);
RestDocumentationResultHandler restDocHandler = document("resources/postResource", requestParameters(parameterWithName("uri").description("The resource URI.")));
@@ -188,6 +188,7 @@ public void testPostResourceInvalidUrl() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testRemoveResource() throws Exception {
RequestBuilder requestBuilder = delete("/resources/{id}", mockResource.getId()).accept(TEXT_PLAIN);
RestDocumentationResultHandler restDocHandler = document("resources/removeResource", pathParameters(parameterWithName("id").description("The resource id.")));
@@ -196,6 +197,7 @@ public void testRemoveResource() throws Exception {
}
@Test
+ @WithMockUser(roles={ "ADMIN" })
public void testRemoveResourceNotFound() throws Exception {
RequestBuilder requestBuilder = delete("/resources/{id}", mockResourceNotExist.getId()).accept(TEXT_PLAIN);
MvcResult result = mockMvc.perform(requestBuilder).andReturn();
diff --git a/src/test/java/edu/tamu/iiif/controller/advice/GlobalExceptionHandlerTest.java b/src/test/java/edu/tamu/iiif/controller/advice/GlobalExceptionHandlerTest.java
index a5465a4..d8b0db7 100644
--- a/src/test/java/edu/tamu/iiif/controller/advice/GlobalExceptionHandlerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/advice/GlobalExceptionHandlerTest.java
@@ -1,55 +1,61 @@
package edu.tamu.iiif.controller.advice;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+
import java.io.IOException;
import org.apache.jena.riot.RiotException;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.data.redis.RedisConnectionFailureException;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.exception.NotFoundException;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class GlobalExceptionHandlerTest {
private GlobalExceptionHandler globalExceptionHandler = new GlobalExceptionHandler();
@Test
public void testHandleIOException() {
- ResponseEntity response = globalExceptionHandler.handleIOException(new IOException("This is a test"));
- Assert.assertEquals("This is a test", response.getBody());
- Assert.assertEquals(HttpStatus.SERVICE_UNAVAILABLE, response.getStatusCode());
+ String message = "This is a test";
+ ResponseEntity response = globalExceptionHandler.handleIOException(new IOException(message));
+ assertEquals(message, response.getBody());
+ assertEquals(HttpStatus.SERVICE_UNAVAILABLE, response.getStatusCode());
}
@Test
public void testHandleIOExceptionIOException() {
ResponseEntity response = globalExceptionHandler.handleIOException(new IOException(new Throwable("Broken pipe")));
- Assert.assertNull(response);
+ assertNull(response);
}
@Test
public void testHandleRiotException() {
- ResponseEntity response = globalExceptionHandler.handleRiotException(new RiotException("This is a test"));
- Assert.assertEquals("This is a test", response.getBody());
- Assert.assertEquals(HttpStatus.SERVICE_UNAVAILABLE, response.getStatusCode());
+ String message = "This is a test";
+ ResponseEntity response = globalExceptionHandler.handleRiotException(new RiotException(message));
+ assertEquals(message, response.getBody());
+ assertEquals(HttpStatus.SERVICE_UNAVAILABLE, response.getStatusCode());
}
@Test
public void testHandleRedisConnectionFailureException() {
- ResponseEntity response = globalExceptionHandler.handleRedisConnectionFailureException(new RedisConnectionFailureException("This is a test"));
- Assert.assertEquals("This is a test", response.getBody());
- Assert.assertEquals(HttpStatus.SERVICE_UNAVAILABLE, response.getStatusCode());
+ String message = "This is a test";
+ ResponseEntity response = globalExceptionHandler.handleRedisConnectionFailureException(new RedisConnectionFailureException(message));
+ assertEquals(message, response.getBody());
+ assertEquals(HttpStatus.SERVICE_UNAVAILABLE, response.getStatusCode());
}
@Test
public void testHandleNotFoundException() {
- ResponseEntity response = globalExceptionHandler.handleNotFoundException(new NotFoundException("This is a test"));
- Assert.assertEquals("This is a test", response.getBody());
- Assert.assertEquals(HttpStatus.NOT_FOUND, response.getStatusCode());
+ String message = "This is a test";
+ ResponseEntity response = globalExceptionHandler.handleNotFoundException(new NotFoundException(message));
+ assertEquals(message, response.getBody());
+ assertEquals(HttpStatus.NOT_FOUND, response.getStatusCode());
}
}
diff --git a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCanvasManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCanvasManifestControllerTest.java
index a11543b..e4c8029 100644
--- a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCanvasManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCanvasManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.dspace.rdf.DSpaceRdfCanvasManifestService;
-@WebMvcTest(value = DSpaceRdfCanvasManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = DSpaceRdfCanvasManifestController.class)
public class DSpaceRdfCanvasManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCollectionManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCollectionManifestControllerTest.java
index 5af58eb..657716e 100644
--- a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCollectionManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfCollectionManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.dspace.rdf.DSpaceRdfCollectionManifestService;
-@WebMvcTest(value = DSpaceRdfCollectionManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = DSpaceRdfCollectionManifestController.class)
public class DSpaceRdfCollectionManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfImageManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfImageManifestControllerTest.java
index 05529c6..582d657 100644
--- a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfImageManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfImageManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.dspace.rdf.DSpaceRdfImageManifestService;
-@WebMvcTest(value = DSpaceRdfImageManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = DSpaceRdfImageManifestController.class)
public class DSpaceRdfImageManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfPresentationManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfPresentationManifestControllerTest.java
index b99d75e..83bff7e 100644
--- a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfPresentationManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfPresentationManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.dspace.rdf.DSpaceRdfPresentationManifestService;
-@WebMvcTest(value = DSpaceRdfPresentationManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = DSpaceRdfPresentationManifestController.class)
public class DSpaceRdfPresentationManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfSequenceManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfSequenceManifestControllerTest.java
index 90d348e..09b27c0 100644
--- a/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfSequenceManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/dspace/rdf/DSpaceRdfSequenceManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.dspace.rdf.DSpaceRdfSequenceManifestService;
-@WebMvcTest(value = DSpaceRdfSequenceManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = DSpaceRdfSequenceManifestController.class)
public class DSpaceRdfSequenceManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCanvasManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCanvasManifestControllerTest.java
index b23eb4f..7058cc5 100644
--- a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCanvasManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCanvasManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.fedora.pcdm.FedoraPcdmCanvasManifestService;
-@WebMvcTest(value = FedoraPcdmCanvasManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = FedoraPcdmCanvasManifestController.class)
public class FedoraPcdmCanvasManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
@@ -36,7 +42,7 @@ public class FedoraPcdmCanvasManifestControllerTest extends AbstractManifestCont
public void testGetManifest() throws Exception {
String expected = readFileToString(json.getFile(), "UTF-8");
when(fedoraPcdmCanvasManifestService.getManifest(any(ManifestRequest.class))).thenReturn(expected);
- RequestBuilder requestBuilder = get("/fedora/canvas/{context}", "/cars_pcdm_objects/chevy/pages/page_0").accept(APPLICATION_JSON);
+ RequestBuilder requestBuilder = get("/fedora/canvas/{context}", "cars_pcdm_objects/chevy/pages/page_0").accept(APPLICATION_JSON);
RestDocumentationResultHandler restDocHandler = document("fedora/canvas", pathParameters(parameterWithName("context").description("The context path.")));
MvcResult result = mockMvc.perform(requestBuilder).andDo(restDocHandler).andReturn();
assertEquals(expected, result.getResponse().getContentAsString());
diff --git a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCollectionManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCollectionManifestControllerTest.java
index 1b3320a..40c249f 100644
--- a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCollectionManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmCollectionManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.fedora.pcdm.FedoraPcdmCollectionManifestService;
-@WebMvcTest(value = FedoraPcdmCollectionManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = FedoraPcdmCollectionManifestController.class)
public class FedoraPcdmCollectionManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmImageManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmImageManifestControllerTest.java
index 0917d15..1f1e3a2 100644
--- a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmImageManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmImageManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.fedora.pcdm.FedoraPcdmImageManifestService;
-@WebMvcTest(value = FedoraPcdmImageManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = FedoraPcdmImageManifestController.class)
public class FedoraPcdmImageManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmPresentationManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmPresentationManifestControllerTest.java
index 8466f3b..0f5e1cc 100644
--- a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmPresentationManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmPresentationManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.fedora.pcdm.FedoraPcdmPresentationManifestService;
-@WebMvcTest(value = FedoraPcdmPresentationManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = FedoraPcdmPresentationManifestController.class)
public class FedoraPcdmPresentationManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmSequenceManifestControllerTest.java b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmSequenceManifestControllerTest.java
index d4ac8a5..a44aa65 100644
--- a/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmSequenceManifestControllerTest.java
+++ b/src/test/java/edu/tamu/iiif/controller/fedora/pcdm/FedoraPcdmSequenceManifestControllerTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.controller.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
@@ -10,20 +10,26 @@
import static org.springframework.restdocs.request.RequestDocumentation.parameterWithName;
import static org.springframework.restdocs.request.RequestDocumentation.pathParameters;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.context.annotation.Import;
import org.springframework.core.io.Resource;
import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.RequestBuilder;
+import edu.tamu.iiif.config.model.AdminConfig;
import edu.tamu.iiif.controller.AbstractManifestControllerTest;
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.service.fedora.pcdm.FedoraPcdmSequenceManifestService;
-@WebMvcTest(value = FedoraPcdmSequenceManifestController.class, secure = false)
+@Import({ AdminConfig.class })
+@ExtendWith(MockitoExtension.class)
+@WebMvcTest(value = FedoraPcdmSequenceManifestController.class)
public class FedoraPcdmSequenceManifestControllerTest extends AbstractManifestControllerTest {
@MockBean
diff --git a/src/test/java/edu/tamu/iiif/exception/NotFoundExceptionTest.java b/src/test/java/edu/tamu/iiif/exception/NotFoundExceptionTest.java
index 5591d3f..b421e1b 100644
--- a/src/test/java/edu/tamu/iiif/exception/NotFoundExceptionTest.java
+++ b/src/test/java/edu/tamu/iiif/exception/NotFoundExceptionTest.java
@@ -1,15 +1,18 @@
package edu.tamu.iiif.exception;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class NotFoundExceptionTest {
- @Test(expected = NotFoundException.class)
- public void testThrowNotFoundException() throws NotFoundException {
- throw new NotFoundException("This is only a test!");
+ @Test
+ public void testThrowNotFoundException() {
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ throw new NotFoundException("This is only a test!");
+ });
}
}
diff --git a/src/test/java/edu/tamu/iiif/exception/RedisManifestNotFoundExceptionTest.java b/src/test/java/edu/tamu/iiif/exception/RedisManifestNotFoundExceptionTest.java
index 6774436..95f4ee6 100644
--- a/src/test/java/edu/tamu/iiif/exception/RedisManifestNotFoundExceptionTest.java
+++ b/src/test/java/edu/tamu/iiif/exception/RedisManifestNotFoundExceptionTest.java
@@ -1,15 +1,18 @@
package edu.tamu.iiif.exception;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RedisManifestNotFoundExceptionTest {
- @Test(expected = RedisManifestNotFoundException.class)
- public void testThrowRedisManifestNotFoundException() throws RedisManifestNotFoundException {
- throw new RedisManifestNotFoundException("This is only a test!");
+ @Test
+ public void testThrowRedisManifestNotFoundException() {
+ Assertions.assertThrows(RedisManifestNotFoundException.class, () -> {
+ throw new RedisManifestNotFoundException("This is only a test!");
+ });
}
}
diff --git a/src/test/java/edu/tamu/iiif/model/ManifestTypeTest.java b/src/test/java/edu/tamu/iiif/model/ManifestTypeTest.java
index fe7bf2a..06e33c5 100644
--- a/src/test/java/edu/tamu/iiif/model/ManifestTypeTest.java
+++ b/src/test/java/edu/tamu/iiif/model/ManifestTypeTest.java
@@ -5,22 +5,22 @@
import static edu.tamu.iiif.constants.Constants.IMAGE_IDENTIFIER;
import static edu.tamu.iiif.constants.Constants.PRESENTATION_IDENTIFIER;
import static edu.tamu.iiif.constants.Constants.SEQUENCE_IDENTIFIER;
+import static org.junit.jupiter.api.Assertions.assertEquals;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class ManifestTypeTest {
@Test
public void testManifestType() {
- Assert.assertEquals(CANVAS_IDENTIFIER, ManifestType.CANVAS.getName());
- Assert.assertEquals(COLLECTION_IDENTIFIER, ManifestType.COLLECTION.getName());
- Assert.assertEquals(IMAGE_IDENTIFIER, ManifestType.IMAGE.getName());
- Assert.assertEquals(PRESENTATION_IDENTIFIER, ManifestType.PRESENTATION.getName());
- Assert.assertEquals(SEQUENCE_IDENTIFIER, ManifestType.SEQUENCE.getName());
+ assertEquals(CANVAS_IDENTIFIER, ManifestType.CANVAS.getName());
+ assertEquals(COLLECTION_IDENTIFIER, ManifestType.COLLECTION.getName());
+ assertEquals(IMAGE_IDENTIFIER, ManifestType.IMAGE.getName());
+ assertEquals(PRESENTATION_IDENTIFIER, ManifestType.PRESENTATION.getName());
+ assertEquals(SEQUENCE_IDENTIFIER, ManifestType.SEQUENCE.getName());
}
}
diff --git a/src/test/java/edu/tamu/iiif/model/RedisManifestTest.java b/src/test/java/edu/tamu/iiif/model/RedisManifestTest.java
index 1331cab..911cf25 100644
--- a/src/test/java/edu/tamu/iiif/model/RedisManifestTest.java
+++ b/src/test/java/edu/tamu/iiif/model/RedisManifestTest.java
@@ -1,11 +1,13 @@
package edu.tamu.iiif.model;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
-@RunWith(SpringRunner.class)
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
+
+@ExtendWith(SpringExtension.class)
public class RedisManifestTest {
protected static final String FEDORA_PCDM_IDENTIFIER = "fedora-pcdm";
@@ -13,36 +15,36 @@ public class RedisManifestTest {
@Test
public void testCreateDefault() {
RedisManifest redisManifest = new RedisManifest();
- Assert.assertNotNull(redisManifest);
- Assert.assertNotNull(redisManifest.getCreation());
- Assert.assertEquals("", redisManifest.getAllowed());
- Assert.assertEquals("", redisManifest.getDisallowed());
+ assertNotNull(redisManifest);
+ assertNotNull(redisManifest.getCreation());
+ assertEquals("", redisManifest.getAllowed());
+ assertEquals("", redisManifest.getDisallowed());
}
@Test
public void testCreate() {
RedisManifest redisManifest = new RedisManifest("path", ManifestType.COLLECTION, FEDORA_PCDM_IDENTIFIER, "{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}");
- Assert.assertNotNull(redisManifest);
- Assert.assertNotNull(redisManifest.getCreation());
- Assert.assertEquals("path", redisManifest.getPath());
- Assert.assertEquals(ManifestType.COLLECTION, redisManifest.getType());
- Assert.assertEquals(FEDORA_PCDM_IDENTIFIER, redisManifest.getRepository());
- Assert.assertEquals("{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}", redisManifest.getJson());
- Assert.assertEquals("", redisManifest.getAllowed());
- Assert.assertEquals("", redisManifest.getDisallowed());
+ assertNotNull(redisManifest);
+ assertNotNull(redisManifest.getCreation());
+ assertEquals("path", redisManifest.getPath());
+ assertEquals(ManifestType.COLLECTION, redisManifest.getType());
+ assertEquals(FEDORA_PCDM_IDENTIFIER, redisManifest.getRepository());
+ assertEquals("{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}", redisManifest.getJson());
+ assertEquals("", redisManifest.getAllowed());
+ assertEquals("", redisManifest.getDisallowed());
}
@Test
public void testCreateComplete() {
RedisManifest redisManifest = new RedisManifest("path", ManifestType.COLLECTION, FEDORA_PCDM_IDENTIFIER, "apple,banana", "cat,dog", "{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}");
- Assert.assertNotNull(redisManifest);
- Assert.assertNotNull(redisManifest.getCreation());
- Assert.assertEquals("path", redisManifest.getPath());
- Assert.assertEquals(ManifestType.COLLECTION, redisManifest.getType());
- Assert.assertEquals(FEDORA_PCDM_IDENTIFIER, redisManifest.getRepository());
- Assert.assertEquals("{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}", redisManifest.getJson());
- Assert.assertEquals("apple,banana", redisManifest.getAllowed());
- Assert.assertEquals("cat,dog", redisManifest.getDisallowed());
+ assertNotNull(redisManifest);
+ assertNotNull(redisManifest.getCreation());
+ assertEquals("path", redisManifest.getPath());
+ assertEquals(ManifestType.COLLECTION, redisManifest.getType());
+ assertEquals(FEDORA_PCDM_IDENTIFIER, redisManifest.getRepository());
+ assertEquals("{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}", redisManifest.getJson());
+ assertEquals("apple,banana", redisManifest.getAllowed());
+ assertEquals("cat,dog", redisManifest.getDisallowed());
}
@Test
@@ -50,10 +52,10 @@ public void testUpdate() {
RedisManifest redisManifest = new RedisManifest("path", ManifestType.COLLECTION, FEDORA_PCDM_IDENTIFIER, "apple,banana", "cat,dog", "{\"@id\":\"http:localhost/fedora/collection?context=pcdm\"}");
redisManifest.setId("1");
redisManifest.setJson("{\"@id\":\"http:localhost/dspace/presentation?context=123456789/123456\"}");
- Assert.assertEquals("1", redisManifest.getId());
- Assert.assertEquals("{\"@id\":\"http:localhost/dspace/presentation?context=123456789/123456\"}", redisManifest.getJson());
- Assert.assertEquals("apple,banana", redisManifest.getAllowed());
- Assert.assertEquals("cat,dog", redisManifest.getDisallowed());
+ assertEquals("1", redisManifest.getId());
+ assertEquals("{\"@id\":\"http:localhost/dspace/presentation?context=123456789/123456\"}", redisManifest.getJson());
+ assertEquals("apple,banana", redisManifest.getAllowed());
+ assertEquals("cat,dog", redisManifest.getDisallowed());
}
}
diff --git a/src/test/java/edu/tamu/iiif/model/RedisResourceTest.java b/src/test/java/edu/tamu/iiif/model/RedisResourceTest.java
index 07bd705..866010e 100644
--- a/src/test/java/edu/tamu/iiif/model/RedisResourceTest.java
+++ b/src/test/java/edu/tamu/iiif/model/RedisResourceTest.java
@@ -1,22 +1,24 @@
package edu.tamu.iiif.model;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
import java.util.UUID;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RedisResourceTest {
@Test
public void testCreate() {
String url = "http://localhost:900/fcrepo/rest/image02";
RedisResource redisResource = new RedisResource(url);
- Assert.assertNotNull(redisResource);
- Assert.assertEquals(UUID.nameUUIDFromBytes(redisResource.getUrl().getBytes()).toString(), redisResource.getId());
- Assert.assertEquals(url, redisResource.getUrl());
+ assertNotNull(redisResource);
+ assertEquals(UUID.nameUUIDFromBytes(redisResource.getUrl().getBytes()).toString(), redisResource.getId());
+ assertEquals(url, redisResource.getUrl());
}
}
diff --git a/src/test/java/edu/tamu/iiif/model/rdf/RdfCanvasTest.java b/src/test/java/edu/tamu/iiif/model/rdf/RdfCanvasTest.java
index 3497b94..0b9c8bf 100644
--- a/src/test/java/edu/tamu/iiif/model/rdf/RdfCanvasTest.java
+++ b/src/test/java/edu/tamu/iiif/model/rdf/RdfCanvasTest.java
@@ -1,24 +1,26 @@
package edu.tamu.iiif.model.rdf;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import de.digitalcollections.iiif.presentation.model.impl.v2.ImageImpl;
import edu.tamu.iiif.model.ImageWithInfo;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RdfCanvasTest {
@Test
public void testCreateDefault() {
RdfCanvas rdfCanvas = new RdfCanvas();
- Assert.assertNotNull(rdfCanvas);
- Assert.assertNotNull(rdfCanvas.getHeight());
- Assert.assertNotNull(rdfCanvas.getWidth());
- Assert.assertNotNull(rdfCanvas.getImages());
- Assert.assertEquals(0, rdfCanvas.getImages().size());
+ assertNotNull(rdfCanvas);
+ assertNotNull(rdfCanvas.getHeight());
+ assertNotNull(rdfCanvas.getWidth());
+ assertNotNull(rdfCanvas.getImages());
+ assertEquals(0, rdfCanvas.getImages().size());
}
@Test
@@ -27,9 +29,9 @@ public void testUpdate() {
rdfCanvas.setHeight(100);
rdfCanvas.setWidth(100);
rdfCanvas.addImage(ImageWithInfo.of(new ImageImpl()));
- Assert.assertEquals(100, rdfCanvas.getHeight());
- Assert.assertEquals(100, rdfCanvas.getWidth());
- Assert.assertEquals(1, rdfCanvas.getImages().size());
+ assertEquals(100, rdfCanvas.getHeight());
+ assertEquals(100, rdfCanvas.getWidth());
+ assertEquals(1, rdfCanvas.getImages().size());
}
}
diff --git a/src/test/java/edu/tamu/iiif/model/rdf/RdfOrderedSequenceTest.java b/src/test/java/edu/tamu/iiif/model/rdf/RdfOrderedSequenceTest.java
index e0b3d31..aae69b7 100644
--- a/src/test/java/edu/tamu/iiif/model/rdf/RdfOrderedSequenceTest.java
+++ b/src/test/java/edu/tamu/iiif/model/rdf/RdfOrderedSequenceTest.java
@@ -2,6 +2,10 @@
import static edu.tamu.iiif.constants.Constants.IANA_FIRST_PREDICATE;
import static edu.tamu.iiif.constants.Constants.IANA_LAST_PREDICATE;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import java.io.File;
import java.util.Optional;
@@ -9,14 +13,13 @@
import org.apache.jena.rdf.model.Model;
import org.apache.jena.rdf.model.Resource;
import org.assertj.core.util.Files;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.utility.RdfModelUtility;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RdfOrderedSequenceTest {
@Test
@@ -33,21 +36,21 @@ public void testRdfOrderedSequence() {
System.out.println(lastId.get());
RdfOrderedResource rdfOrderedSequence = new RdfOrderedResource(model, resource, firstId.get(), lastId.get());
- Assert.assertNotNull(rdfOrderedSequence);
- Assert.assertEquals(model, rdfOrderedSequence.getModel());
+ assertNotNull(rdfOrderedSequence);
+ assertEquals(model, rdfOrderedSequence.getModel());
- Assert.assertEquals(firstId.get(), rdfOrderedSequence.getFirstId());
- Assert.assertEquals(lastId.get(), rdfOrderedSequence.getLastId());
+ assertEquals(firstId.get(), rdfOrderedSequence.getFirstId());
+ assertEquals(lastId.get(), rdfOrderedSequence.getLastId());
- Assert.assertTrue(rdfOrderedSequence.isFirst());
- Assert.assertFalse(rdfOrderedSequence.isLast());
+ assertTrue(rdfOrderedSequence.isFirst());
+ assertFalse(rdfOrderedSequence.isLast());
rdfOrderedSequence.setCurrentId(rdfOrderedSequence.getLastId());
- Assert.assertTrue(rdfOrderedSequence.isLast());
- Assert.assertFalse(rdfOrderedSequence.isFirst());
+ assertTrue(rdfOrderedSequence.isLast());
+ assertFalse(rdfOrderedSequence.isFirst());
- Assert.assertEquals(lastId.get(), rdfOrderedSequence.getCurrentId());
+ assertEquals(lastId.get(), rdfOrderedSequence.getCurrentId());
}
}
diff --git a/src/test/java/edu/tamu/iiif/model/rdf/RdfResourceTest.java b/src/test/java/edu/tamu/iiif/model/rdf/RdfResourceTest.java
index 343fbf1..dbc3620 100644
--- a/src/test/java/edu/tamu/iiif/model/rdf/RdfResourceTest.java
+++ b/src/test/java/edu/tamu/iiif/model/rdf/RdfResourceTest.java
@@ -1,5 +1,8 @@
package edu.tamu.iiif.model.rdf;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
import java.io.File;
import org.apache.jena.rdf.model.Model;
@@ -9,15 +12,14 @@
import org.apache.jena.rdf.model.Resource;
import org.apache.jena.rdf.model.Statement;
import org.assertj.core.util.Files;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.constants.Constants;
import edu.tamu.iiif.utility.RdfModelUtility;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RdfResourceTest {
private final static String rdf = Files.contentOf(new File("src/test/resources/mock/dspace/rdf/item.rdf"), "UTF-8");
@@ -26,8 +28,8 @@ public class RdfResourceTest {
public void testCreateDefault() {
Model model = RdfModelUtility.createRdfModel(rdf);
RdfResource rdfResource = new RdfResource(model);
- Assert.assertNotNull(rdfResource);
- Assert.assertEquals(model, rdfResource.getModel());
+ assertNotNull(rdfResource);
+ assertEquals(model, rdfResource.getModel());
}
@Test
@@ -35,9 +37,9 @@ public void testCreateWithResource() {
Model model = RdfModelUtility.createRdfModel(rdf);
Resource resource = model.getResource(Constants.DSPACE_IS_PART_OF_COLLECTION_PREDICATE);
RdfResource rdfResource = new RdfResource(model, resource);
- Assert.assertNotNull(rdfResource);
- Assert.assertEquals(model, rdfResource.getModel());
- Assert.assertEquals(resource, rdfResource.getResource());
+ assertNotNull(rdfResource);
+ assertEquals(model, rdfResource.getModel());
+ assertEquals(resource, rdfResource.getResource());
}
@Test
@@ -47,8 +49,8 @@ public void testCreateFromRdfResourceWithResourceId() {
RdfResource testRdfResource = new RdfResource(testModel, testResource);
Resource resource = testModel.getResource(Constants.DSPACE_HAS_BITSTREAM_PREDICATE);
RdfResource rdfResource = new RdfResource(testRdfResource, Constants.DSPACE_HAS_BITSTREAM_PREDICATE);
- Assert.assertNotNull(rdfResource);
- Assert.assertEquals(resource, rdfResource.getResource());
+ assertNotNull(rdfResource);
+ assertEquals(resource, rdfResource.getResource());
}
@Test
@@ -58,8 +60,8 @@ public void testCreateFromRdfResourceWithResourceResource() {
RdfResource testRdfResource = new RdfResource(testModel, testResource);
Resource resource = testModel.getResource(Constants.DSPACE_HAS_BITSTREAM_PREDICATE);
RdfResource rdfResource = new RdfResource(testRdfResource, resource);
- Assert.assertNotNull(rdfResource);
- Assert.assertEquals(resource, rdfResource.getResource());
+ assertNotNull(rdfResource);
+ assertEquals(resource, rdfResource.getResource());
}
@Test
@@ -68,36 +70,36 @@ public void testMethods() {
Resource resource = model.getResource(Constants.DSPACE_IS_PART_OF_COLLECTION_PREDICATE);
RdfResource rdfResource = new RdfResource(model, resource);
- Assert.assertEquals(model, rdfResource.getModel());
- Assert.assertEquals(resource, rdfResource.getResource());
- Assert.assertEquals(Constants.DSPACE_IS_PART_OF_COLLECTION_PREDICATE, rdfResource.getId());
+ assertEquals(model, rdfResource.getModel());
+ assertEquals(resource, rdfResource.getResource());
+ assertEquals(Constants.DSPACE_IS_PART_OF_COLLECTION_PREDICATE, rdfResource.getId());
Resource testResource = model.getResource(Constants.DSPACE_HAS_BITSTREAM_PREDICATE);
rdfResource.setResource(testResource);
- Assert.assertEquals(testResource, rdfResource.getResource());
- Assert.assertEquals(Constants.DSPACE_HAS_BITSTREAM_PREDICATE, rdfResource.getId());
+ assertEquals(testResource, rdfResource.getResource());
+ assertEquals(Constants.DSPACE_HAS_BITSTREAM_PREDICATE, rdfResource.getId());
- Assert.assertEquals(resource, rdfResource.getResourceById(Constants.DSPACE_IS_PART_OF_COLLECTION_PREDICATE));
+ assertEquals(resource, rdfResource.getResourceById(Constants.DSPACE_IS_PART_OF_COLLECTION_PREDICATE));
Property property = model.getProperty(Constants.DUBLIN_CORE_TERMS_TITLE);
- Assert.assertEquals(property, rdfResource.getProperty(Constants.DUBLIN_CORE_TERMS_TITLE));
+ assertEquals(property, rdfResource.getProperty(Constants.DUBLIN_CORE_TERMS_TITLE));
Statement statement = resource.getProperty(property);
- Assert.assertEquals(statement, rdfResource.getStatementOfPropertyWithId(Constants.DUBLIN_CORE_TERMS_TITLE));
+ assertEquals(statement, rdfResource.getStatementOfPropertyWithId(Constants.DUBLIN_CORE_TERMS_TITLE));
NodeIterator nodeIterator = rdfResource.getAllNodesOfPropertyWithId(Constants.DSPACE_HAS_BITSTREAM_PREDICATE);
- Assert.assertNotNull(nodeIterator);
+ assertNotNull(nodeIterator);
- Assert.assertEquals(1, nodeIterator.toList().size());
+ assertEquals(1, nodeIterator.toList().size());
ResIterator resIterator = rdfResource.listResourcesWithPropertyWithId(Constants.DSPACE_HAS_BITSTREAM_PREDICATE);
- Assert.assertNotNull(resIterator);
+ assertNotNull(resIterator);
- Assert.assertEquals(1, resIterator.toList().size());
+ assertEquals(1, resIterator.toList().size());
}
}
diff --git a/src/test/java/edu/tamu/iiif/service/AbstractManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/AbstractManifestServiceTest.java
index b77b588..473f17a 100644
--- a/src/test/java/edu/tamu/iiif/service/AbstractManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/AbstractManifestServiceTest.java
@@ -1,30 +1,31 @@
package edu.tamu.iiif.service;
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.when;
-import static org.mockito.MockitoAnnotations.initMocks;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.lenient;
import static org.springframework.test.util.ReflectionTestUtils.setField;
import java.net.URISyntaxException;
import java.util.Base64;
import java.util.Optional;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-import org.junit.Before;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.Spy;
import org.mockito.invocation.InvocationOnMock;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.mockito.stubbing.Answer;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.web.client.RestTemplate;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
import edu.tamu.iiif.exception.NotFoundException;
import edu.tamu.iiif.model.ManifestType;
import edu.tamu.iiif.model.repo.RedisManifestRepo;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
+@ExtendWith(MockitoExtension.class)
public abstract class AbstractManifestServiceTest implements ManifestServiceTest {
protected static final String IIIF_SERVICE_URL = "http://localhost:9000";
@@ -45,12 +46,11 @@ public abstract class AbstractManifestServiceTest implements ManifestServiceTest
@Mock
protected ResourceResolver resourceResolver;
- @Before
+ @BeforeEach
public void init() throws URISyntaxException, NotFoundException {
- initMocks(this);
- when(redisManifestRepo.findByPathAndTypeAndRepositoryAndAllowedAndDisallowed(any(String.class), any(ManifestType.class), any(String.class), any(String.class), any(String.class))).thenReturn(Optional.empty());
+ lenient().when(redisManifestRepo.findByPathAndTypeAndRepositoryAndAllowedAndDisallowed(any(String.class), any(ManifestType.class), any(String.class), any(String.class), any(String.class))).thenReturn(Optional.empty());
- when(resourceResolver.lookup(any(String.class))).thenAnswer(new Answer() {
+ lenient().when(resourceResolver.lookup(any(String.class))).thenAnswer(new Answer() {
@Override
public String answer(InvocationOnMock invocation) throws Throwable {
Object[] args = invocation.getArguments();
diff --git a/src/test/java/edu/tamu/iiif/service/CustomRedirectStrategyTest.java b/src/test/java/edu/tamu/iiif/service/CustomRedirectStrategyTest.java
index 3a609f9..6b0783d 100644
--- a/src/test/java/edu/tamu/iiif/service/CustomRedirectStrategyTest.java
+++ b/src/test/java/edu/tamu/iiif/service/CustomRedirectStrategyTest.java
@@ -1,6 +1,6 @@
package edu.tamu.iiif.service;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import java.net.MalformedURLException;
import java.net.URI;
@@ -13,11 +13,12 @@
import org.apache.http.message.BasicHttpResponse;
import org.apache.http.protocol.BasicHttpContext;
import org.apache.http.protocol.HttpContext;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class CustomRedirectStrategyTest {
@Test
@@ -42,23 +43,27 @@ public void testGetLocationURIRelativeLocation() throws ProtocolException, Malfo
assertEquals("http://localhost:9000/relocated/test", uri.toString());
}
- @Test(expected = ProtocolException.class)
+ @Test
public void testGetLocationURIWithBadLocation() throws ProtocolException {
- CustomRedirectStrategy customRedirectStrategy = new CustomRedirectStrategy();
- HttpRequest request = new BasicHttpRequest("GET", "http://localhost:9000/test");
- HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 301, "Gone fishing!");
- response.setHeader("location", "this$won't&work");
- HttpContext context = new BasicHttpContext();
- customRedirectStrategy.getLocationURI(request, response, context);
+ Assertions.assertThrows(ProtocolException.class, () -> {
+ CustomRedirectStrategy customRedirectStrategy = new CustomRedirectStrategy();
+ HttpRequest request = new BasicHttpRequest("GET", "http://localhost:9000/test");
+ HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 301, "Gone fishing!");
+ response.setHeader("location", "this$won't&work");
+ HttpContext context = new BasicHttpContext();
+ customRedirectStrategy.getLocationURI(request, response, context);
+ });
}
- @Test(expected = ProtocolException.class)
+ @Test
public void testGetLocationURIWithoutLocation() throws ProtocolException {
- CustomRedirectStrategy customRedirectStrategy = new CustomRedirectStrategy();
- HttpRequest request = new BasicHttpRequest("GET", "http://localhost:9000/test");
- HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 301, "Gone fishing!");
- HttpContext context = new BasicHttpContext();
- customRedirectStrategy.getLocationURI(request, response, context);
+ Assertions.assertThrows(ProtocolException.class, () -> {
+ CustomRedirectStrategy customRedirectStrategy = new CustomRedirectStrategy();
+ HttpRequest request = new BasicHttpRequest("GET", "http://localhost:9000/test");
+ HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 301, "Gone fishing!");
+ HttpContext context = new BasicHttpContext();
+ customRedirectStrategy.getLocationURI(request, response, context);
+ });
}
}
diff --git a/src/test/java/edu/tamu/iiif/service/RedisResourceResolverTest.java b/src/test/java/edu/tamu/iiif/service/RedisResourceResolverTest.java
index e41f646..6739b74 100644
--- a/src/test/java/edu/tamu/iiif/service/RedisResourceResolverTest.java
+++ b/src/test/java/edu/tamu/iiif/service/RedisResourceResolverTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.service;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.when;
import static org.springframework.test.util.ReflectionTestUtils.setField;
@@ -10,17 +10,20 @@
import java.net.URISyntaxException;
import java.util.Optional;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.boot.test.mock.mockito.MockBean;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.exception.NotFoundException;
import edu.tamu.iiif.model.RedisResource;
import edu.tamu.iiif.model.repo.RedisResourceRepo;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
+@ExtendWith(MockitoExtension.class)
public class RedisResourceResolverTest {
@MockBean
@@ -32,17 +35,17 @@ public class RedisResourceResolverTest {
private final RedisResource mockResourceNotExist = new RedisResource("http://localhost:9000/fcrepo/rest/image02");
- @Before
+ @BeforeEach
public void setup() {
- when(redisResourceRepo.exists(mockResource.getId())).thenReturn(true);
- when(redisResourceRepo.findOne(mockResource.getId())).thenReturn(mockResource);
+ when(redisResourceRepo.existsById(mockResource.getId())).thenReturn(true);
+ when(redisResourceRepo.findById(mockResource.getId())).thenReturn(Optional.of(mockResource));
when(redisResourceRepo.findByUrl(mockResource.getUrl())).thenReturn(Optional.of(mockResource));
when(redisResourceRepo.save(any(RedisResource.class))).thenReturn(mockResource);
- doNothing().when(redisResourceRepo).delete(mockResource.getId());
+ doNothing().when(redisResourceRepo).deleteById(mockResource.getId());
when(redisResourceRepo.findByUrl(mockResourceNotExist.getUrl())).thenReturn(Optional.empty());
- when(redisResourceRepo.exists(mockResourceNotExist.getId())).thenReturn(false);
+ when(redisResourceRepo.existsById(mockResourceNotExist.getId())).thenReturn(false);
setField(redisResourceResolver, "redisResourceRepo", redisResourceRepo);
}
@@ -53,9 +56,11 @@ public void testLookup() throws NotFoundException, URISyntaxException {
assertEquals(mockResource.getId(), id);
}
- @Test(expected = NotFoundException.class)
+ @Test
public void testLookupNotFound() throws NotFoundException, URISyntaxException {
- redisResourceResolver.lookup(mockResourceNotExist.getUrl());
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ redisResourceResolver.lookup(mockResourceNotExist.getUrl());
+ });
}
@Test
@@ -70,9 +75,11 @@ public void testResolve() throws NotFoundException {
assertEquals(mockResource.getUrl(), url);
}
- @Test(expected = NotFoundException.class)
+ @Test
public void testResolveNotFound() throws NotFoundException {
- redisResourceResolver.resolve(mockResourceNotExist.getId());
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ redisResourceResolver.resolve(mockResourceNotExist.getId());
+ });
}
@Test
@@ -80,9 +87,11 @@ public void testRemove() throws NotFoundException {
redisResourceResolver.remove(mockResource.getId());
}
- @Test(expected = NotFoundException.class)
+ @Test
public void testRemoveNotFound() throws NotFoundException {
- redisResourceResolver.remove(mockResourceNotExist.getId());
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ redisResourceResolver.remove(mockResourceNotExist.getId());
+ });
}
}
diff --git a/src/test/java/edu/tamu/iiif/service/RemoteResourceResolverTest.java b/src/test/java/edu/tamu/iiif/service/RemoteResourceResolverTest.java
index 4db283d..5579a0f 100644
--- a/src/test/java/edu/tamu/iiif/service/RemoteResourceResolverTest.java
+++ b/src/test/java/edu/tamu/iiif/service/RemoteResourceResolverTest.java
@@ -1,8 +1,8 @@
package edu.tamu.iiif.service;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import static org.springframework.test.util.ReflectionTestUtils.setField;
@@ -11,9 +11,10 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.http.client.utils.URIBuilder;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
@@ -21,7 +22,7 @@
import org.springframework.http.RequestEntity.BodyBuilder;
import org.springframework.http.RequestEntity.HeadersBuilder;
import org.springframework.http.ResponseEntity;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.web.client.RestTemplate;
import edu.tamu.iiif.config.model.AdminConfig.Credentials;
@@ -30,7 +31,7 @@
import edu.tamu.iiif.exception.NotFoundException;
import edu.tamu.iiif.model.RedisResource;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RemoteResourceResolverTest {
@MockBean
@@ -44,7 +45,7 @@ public class RemoteResourceResolverTest {
private final ResolverConfig resolver = new ResolverConfig();
- @Before
+ @BeforeEach
public void setup() throws URISyntaxException {
resolver.setType(ResolverType.REMOTE);
resolver.setUrl("http://localhost:9001/entity");
@@ -69,16 +70,18 @@ public void testLookup() throws NotFoundException, URISyntaxException {
assertEquals(mockResource.getId(), id);
}
- @Test(expected = NotFoundException.class)
+ @Test
public void testLookupNotFound() throws NotFoundException, URISyntaxException {
- URIBuilder builder = new URIBuilder(resolver.getUrl());
- builder.addParameter("url", mockResourceNotExist.getUrl());
- URI uri = builder.build();
- RequestEntity requestNotFound = RequestEntity.get(uri).accept(MediaType.TEXT_PLAIN).build();
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ URIBuilder builder = new URIBuilder(resolver.getUrl());
+ builder.addParameter("url", mockResourceNotExist.getUrl());
+ URI uri = builder.build();
+ RequestEntity requestNotFound = RequestEntity.get(uri).accept(MediaType.TEXT_PLAIN).build();
- when(restTemplate.exchange(eq(requestNotFound), eq(String.class))).thenReturn(new ResponseEntity(String.format("Resource with url %s not found!", requestNotFound.getUrl()), HttpStatus.NOT_FOUND));
+ when(restTemplate.exchange(eq(requestNotFound), eq(String.class))).thenReturn(new ResponseEntity(String.format("Resource with url %s not found!", requestNotFound.getUrl()), HttpStatus.NOT_FOUND));
- remoteResourceResolver.lookup(mockResourceNotExist.getUrl());
+ remoteResourceResolver.lookup(mockResourceNotExist.getUrl());
+ });
}
@Test
@@ -110,15 +113,17 @@ public void testResolve() throws NotFoundException, URISyntaxException {
assertEquals(mockResource.getUrl(), url);
}
- @Test(expected = NotFoundException.class)
+ @Test
public void testResolveNotFound() throws NotFoundException, URISyntaxException {
- URIBuilder builder = new URIBuilder(StringUtils.removeEnd(resolver.getUrl(), "/") + "/" + mockResourceNotExist.getId());
- URI uri = builder.build();
- RequestEntity request = RequestEntity.get(uri).accept(MediaType.TEXT_PLAIN).build();
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ URIBuilder builder = new URIBuilder(StringUtils.removeEnd(resolver.getUrl(), "/") + "/" + mockResourceNotExist.getId());
+ URI uri = builder.build();
+ RequestEntity request = RequestEntity.get(uri).accept(MediaType.TEXT_PLAIN).build();
- when(restTemplate.exchange(eq(request), eq(String.class))).thenReturn(new ResponseEntity(String.format("Resource with id %s not found!", mockResourceNotExist.getId()), HttpStatus.FOUND));
+ when(restTemplate.exchange(eq(request), eq(String.class))).thenReturn(new ResponseEntity(String.format("Resource with id %s not found!", mockResourceNotExist.getId()), HttpStatus.FOUND));
- remoteResourceResolver.resolve(mockResourceNotExist.getId());
+ remoteResourceResolver.resolve(mockResourceNotExist.getId());
+ });
}
@Test
@@ -136,19 +141,21 @@ public void testRemove() throws NotFoundException, URISyntaxException {
remoteResourceResolver.remove(mockResource.getId());
}
- @Test(expected = NotFoundException.class)
+ @Test
public void testRemoveNotFound() throws NotFoundException, URISyntaxException {
- URIBuilder builder = new URIBuilder(StringUtils.removeEnd(resolver.getUrl(), "/") + "/" + mockResourceNotExist.getId());
- URI uri = builder.build();
- HeadersBuilder> headerBuilder = RequestEntity.delete(uri);
- if (resolver.hasCredentials()) {
- headerBuilder.header("Authorization", String.format("Basic %s", resolver.getBase64Credentials()));
- }
- RequestEntity request = headerBuilder.build();
-
- when(restTemplate.exchange(eq(request), eq(String.class))).thenReturn(new ResponseEntity(String.format("Resource with id %s not found!", mockResourceNotExist.getId()), HttpStatus.NOT_FOUND));
-
- remoteResourceResolver.remove(mockResourceNotExist.getId());
+ Assertions.assertThrows(NotFoundException.class, () -> {
+ URIBuilder builder = new URIBuilder(StringUtils.removeEnd(resolver.getUrl(), "/") + "/" + mockResourceNotExist.getId());
+ URI uri = builder.build();
+ HeadersBuilder> headerBuilder = RequestEntity.delete(uri);
+ if (resolver.hasCredentials()) {
+ headerBuilder.header("Authorization", String.format("Basic %s", resolver.getBase64Credentials()));
+ }
+ RequestEntity request = headerBuilder.build();
+
+ when(restTemplate.exchange(eq(request), eq(String.class))).thenReturn(new ResponseEntity(String.format("Resource with id %s not found!", mockResourceNotExist.getId()), HttpStatus.NOT_FOUND));
+
+ remoteResourceResolver.remove(mockResourceNotExist.getId());
+ });
}
}
diff --git a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCanvasManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCanvasManifestServiceTest.java
index ff32a70..a2e64c3 100644
--- a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCanvasManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCanvasManifestServiceTest.java
@@ -1,24 +1,27 @@
package edu.tamu.iiif.service.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import com.fasterxml.jackson.databind.JsonNode;
-
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
import org.springframework.http.HttpHeaders;
+import com.fasterxml.jackson.databind.JsonNode;
+
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class DSpaceRdfCanvasManifestServiceTest extends AbstractDSpaceRdfManifestServiceTest {
@InjectMocks
@@ -33,7 +36,7 @@ public class DSpaceRdfCanvasManifestServiceTest extends AbstractDSpaceRdfManifes
@Value("classpath:mock/dspace/json/canvas.json")
private Resource canvas;
- @Before
+ @BeforeEach
public void setup() {
setup(dspaceRdfCanvasManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCollectionManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCollectionManifestServiceTest.java
index 88c4859..2826787 100644
--- a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCollectionManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfCollectionManifestServiceTest.java
@@ -1,16 +1,18 @@
package edu.tamu.iiif.service.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
@@ -18,6 +20,7 @@
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class DSpaceRdfCollectionManifestServiceTest extends AbstractDSpaceRdfManifestServiceTest {
@InjectMocks
@@ -41,7 +44,7 @@ public class DSpaceRdfCollectionManifestServiceTest extends AbstractDSpaceRdfMan
@Value("classpath:mock/dspace/json/collections.json")
private Resource collections;
- @Before
+ @BeforeEach
public void setup() {
setup(dspaceRdfCollectionManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfImageManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfImageManifestServiceTest.java
index f43e6e4..e7b18e1 100644
--- a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfImageManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfImageManifestServiceTest.java
@@ -1,24 +1,27 @@
package edu.tamu.iiif.service.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import com.fasterxml.jackson.databind.JsonNode;
-
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
+import com.fasterxml.jackson.databind.JsonNode;
+
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class DSpaceRdfImageManifestServiceTest extends AbstractDSpaceRdfManifestServiceTest {
@InjectMocks
@@ -27,7 +30,7 @@ public class DSpaceRdfImageManifestServiceTest extends AbstractDSpaceRdfManifest
@Value("classpath:mock/dspace/json/image.json")
private Resource image;
- @Before
+ @BeforeEach
public void setup() {
setup(dspaceRdfImageManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfPresentationManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfPresentationManifestServiceTest.java
index 8b39fd4..03fde4a 100644
--- a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfPresentationManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfPresentationManifestServiceTest.java
@@ -2,29 +2,33 @@
import static edu.tamu.iiif.model.ManifestType.PRESENTATION;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.lenient;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.Arrays;
import java.util.Optional;
-import com.fasterxml.jackson.databind.JsonNode;
-
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
import org.springframework.http.HttpHeaders;
+import com.fasterxml.jackson.databind.JsonNode;
+
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.model.ManifestType;
import edu.tamu.iiif.model.RedisManifest;
+@ExtendWith(MockitoExtension.class)
public class DSpaceRdfPresentationManifestServiceTest extends AbstractDSpaceRdfManifestServiceTest {
@InjectMocks
@@ -57,7 +61,7 @@ public class DSpaceRdfPresentationManifestServiceTest extends AbstractDSpaceRdfM
@Value("classpath:mock/dspace/json/collection-presentation.json")
private Resource collectionPresentation;
- @Before
+ @BeforeEach
public void setup() {
setup(dspaceRdfPresentationManifestService);
}
@@ -73,31 +77,9 @@ public void testGetManifest() throws IOException, URISyntaxException {
public void testGetCollectionManifest() throws IOException, URISyntaxException {
setupMocks();
when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158299"), eq(String.class))).thenReturn(readFileToString(collectionRdf.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158301"), eq(String.class))).thenReturn(readFileToString(subcommunityRdf.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158298"), eq(String.class))).thenReturn(readFileToString(communityRdf.getFile(), "UTF-8"));
-
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158316"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8").replace("123456789/158308", "123456789/158316"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158317"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8").replace("123456789/158308", "123456789/158317"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158310"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8").replace("123456789/158308", "123456789/158310"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158307"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8").replace("123456789/158308", "123456789/158307"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158313"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8").replace("123456789/158308", "123456789/158313"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158312"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8").replace("123456789/158308", "123456789/158312"));
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "image/png; charset=utf-8");
- when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158307/1/sports-car-146873_960_720.png"))).thenReturn(headers);
- when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158310/1/sports-car-146873_960_720.png"))).thenReturn(headers);
- when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158312/1/sports-car-146873_960_720.png"))).thenReturn(headers);
- when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158313/1/sports-car-146873_960_720.png"))).thenReturn(headers);
- when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158316/1/sports-car-146873_960_720.png"))).thenReturn(headers);
- when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158317/1/sports-car-146873_960_720.png"))).thenReturn(headers);
-
- when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMxMC8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMxMy8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMxMi8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMxNy8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMwNy8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMxNi8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
String manifest = dspaceRdfPresentationManifestService.getManifest(ManifestRequest.of("123456789/158299", false));
assertEquals(objectMapper.readValue(collectionPresentation.getFile(), JsonNode.class), objectMapper.readValue(manifest, JsonNode.class));
@@ -136,7 +118,7 @@ public void testGetManifestUpdateCached() throws IOException, URISyntaxException
private void setupMocks() throws IOException {
when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158308"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158308/1/sports-car-146873_960_720.png"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8"));
+ lenient().when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158308/1/sports-car-146873_960_720.png"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8"));
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "image/png; charset=utf-8");
when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158308/1/sports-car-146873_960_720.png"))).thenReturn(headers);
diff --git a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfSequenceManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfSequenceManifestServiceTest.java
index 51d6c69..bad2f50 100644
--- a/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfSequenceManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/dspace/rdf/DSpaceRdfSequenceManifestServiceTest.java
@@ -1,24 +1,28 @@
package edu.tamu.iiif.service.dspace.rdf;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.lenient;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import com.fasterxml.jackson.databind.JsonNode;
-
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
import org.springframework.http.HttpHeaders;
+import com.fasterxml.jackson.databind.JsonNode;
+
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class DSpaceRdfSequenceManifestServiceTest extends AbstractDSpaceRdfManifestServiceTest {
@InjectMocks
@@ -33,7 +37,7 @@ public class DSpaceRdfSequenceManifestServiceTest extends AbstractDSpaceRdfManif
@Value("classpath:mock/dspace/json/sequence.json")
private Resource sequence;
- @Before
+ @BeforeEach
public void setup() {
setup(dspaceRdfSequenceManifestService);
}
@@ -45,8 +49,11 @@ public void testGetManifest() throws IOException, URISyntaxException {
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "image/png; charset=utf-8");
when(restTemplate.headForHeaders(eq(DSPACE_URL + "/xmlui/bitstream/123456789/158308/1/sports-car-146873_960_720.png"))).thenReturn(headers);
- when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158308/1/sports-car-146873_960_720.png"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8"));
when(restTemplate.getForObject(eq(IMAGE_SERVICE_URL + "/ZHNwYWNlLXJkZjp4bWx1aS9iaXRzdHJlYW0vMTIzNDU2Nzg5LzE1ODMwOC8xL3Nwb3J0cy1jYXItMTQ2ODczXzk2MF83MjAucG5n/info.json"), eq(String.class))).thenReturn(readFileToString(image.getFile(), "UTF-8"));
+
+ // Lenient() is required here because Mockito incorrectly thinks this is not used and reports this as unnecessary stubbing but removing this stub results in a NPE.
+ lenient().when(restTemplate.getForObject(eq(DSPACE_URL + "/rdf/handle/123456789/158308/1/sports-car-146873_960_720.png"), eq(String.class))).thenReturn(readFileToString(rdf.getFile(), "UTF-8"));
+
String manifest = dspaceRdfSequenceManifestService.getManifest(ManifestRequest.of("123456789/158308", false));
assertEquals(objectMapper.readValue(sequence.getFile(), JsonNode.class), objectMapper.readValue(manifest, JsonNode.class));
diff --git a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/AbstractFedoraPcdmManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/AbstractFedoraPcdmManifestServiceTest.java
index c28c924..4452eeb 100644
--- a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/AbstractFedoraPcdmManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/AbstractFedoraPcdmManifestServiceTest.java
@@ -1,78 +1,78 @@
-package edu.tamu.iiif.service.fedora.pcdm;
-
-import static org.mockito.Mockito.when;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.springframework.boot.test.mock.mockito.MockBean;
-
-import edu.tamu.iiif.config.model.FedoraPcdmIiifConfig;
-import edu.tamu.iiif.service.AbstractManifestServiceTest;
-
-public abstract class AbstractFedoraPcdmManifestServiceTest extends AbstractManifestServiceTest {
-
- @MockBean
- private FedoraPcdmIiifConfig config;
-
- protected static final String FEDORA_URL = "http://localhost:9000/fcrepo/rest";
-
- protected static final String FEDORA_PCDM_IDENTIFIER = "fedora-pcdm";
-
- protected void setup(AbstractFedoraPcdmManifestService fedoraPcdmManifestService) {
- super.setup(fedoraPcdmManifestService);
- List labelPredicates = new ArrayList();
- labelPredicates.add("http://purl.org/dc/elements/1.1/title");
- labelPredicates.add("http://purl.org/dc/terms/title");
- labelPredicates.add("http://www.w3.org/2000/01/rdf-schema#label");
- labelPredicates.add("http://purl.org/dc/elements/1.1/identifier");
-
- List descriptionPredicates = new ArrayList();
- descriptionPredicates.add("http://purl.org/dc/terms/abstract");
- descriptionPredicates.add("http://purl.org/dc/terms/description");
- descriptionPredicates.add("http://purl.org/dc/elements/1.1/description");
-
- List attributionPredicates = new ArrayList();
- attributionPredicates.add("http://purl.org/dc/elements/1.1/creator");
- attributionPredicates.add("http://purl.org/dc/terms/creator");
- attributionPredicates.add("http://purl.org/dc/elements/1.1/contributor");
- attributionPredicates.add("http://purl.org/dc/terms/contributor");
- attributionPredicates.add("http://purl.org/dc/elements/1.1/publisher");
- attributionPredicates.add("http://purl.org/dc/terms/publisher");
- attributionPredicates.add("http://purl.org/dc/elements/1.1/rights");
- attributionPredicates.add("http://purl.org/dc/terms/rightsHolder");
-
- List licensePrecedence = new ArrayList();
- licensePrecedence.add("http://purl.org/dc/terms/license");
-
- List metadataPrefixes = new ArrayList();
- metadataPrefixes.add("http://purl.org/dc/elements/1.1/");
- metadataPrefixes.add("http://purl.org/dc/terms/");
-
- List metadataExclusion = new ArrayList();
- metadataExclusion.add("http://purl.org/dc/terms/description");
- metadataExclusion.add("http://purl.org/dc/elements/1.1/description");
-
- when(config.getLabelPredicates()).thenReturn(labelPredicates);
- when(config.getDescriptionPredicates()).thenReturn(descriptionPredicates);
- when(config.getAttributionPredicates()).thenReturn(attributionPredicates);
- when(config.getLicensePrecedence()).thenReturn(licensePrecedence);
- when(config.getMetadataPrefixes()).thenReturn(metadataPrefixes);
- when(config.getMetadataExclusion()).thenReturn(metadataExclusion);
-
- when(config.getUrl()).thenReturn(FEDORA_URL);
- when(config.getIdentifier()).thenReturn(FEDORA_PCDM_IDENTIFIER);
- when(config.getContextAsMetadata()).thenReturn(true);
- }
-
- @Override
- protected String getRepoRdfIdentifier() {
- return FEDORA_PCDM_IDENTIFIER;
- }
-
- @Override
- protected String getRepoBaseUrl() {
- return FEDORA_URL + "/";
- }
-
-}
+package edu.tamu.iiif.service.fedora.pcdm;
+
+import static org.mockito.Mockito.lenient;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.springframework.boot.test.mock.mockito.MockBean;
+
+import edu.tamu.iiif.config.model.FedoraPcdmIiifConfig;
+import edu.tamu.iiif.service.AbstractManifestServiceTest;
+
+public abstract class AbstractFedoraPcdmManifestServiceTest extends AbstractManifestServiceTest {
+
+ @MockBean
+ private FedoraPcdmIiifConfig config;
+
+ protected static final String FEDORA_URL = "http://localhost:9000/fcrepo/rest";
+
+ protected static final String FEDORA_PCDM_IDENTIFIER = "fedora-pcdm";
+
+ protected void setup(AbstractFedoraPcdmManifestService fedoraPcdmManifestService) {
+ super.setup(fedoraPcdmManifestService);
+ List labelPredicates = new ArrayList();
+ labelPredicates.add("http://purl.org/dc/elements/1.1/title");
+ labelPredicates.add("http://purl.org/dc/terms/title");
+ labelPredicates.add("http://www.w3.org/2000/01/rdf-schema#label");
+ labelPredicates.add("http://purl.org/dc/elements/1.1/identifier");
+
+ List descriptionPredicates = new ArrayList();
+ descriptionPredicates.add("http://purl.org/dc/terms/abstract");
+ descriptionPredicates.add("http://purl.org/dc/terms/description");
+ descriptionPredicates.add("http://purl.org/dc/elements/1.1/description");
+
+ List attributionPredicates = new ArrayList();
+ attributionPredicates.add("http://purl.org/dc/elements/1.1/creator");
+ attributionPredicates.add("http://purl.org/dc/terms/creator");
+ attributionPredicates.add("http://purl.org/dc/elements/1.1/contributor");
+ attributionPredicates.add("http://purl.org/dc/terms/contributor");
+ attributionPredicates.add("http://purl.org/dc/elements/1.1/publisher");
+ attributionPredicates.add("http://purl.org/dc/terms/publisher");
+ attributionPredicates.add("http://purl.org/dc/elements/1.1/rights");
+ attributionPredicates.add("http://purl.org/dc/terms/rightsHolder");
+
+ List licensePrecedence = new ArrayList();
+ licensePrecedence.add("http://purl.org/dc/terms/license");
+
+ List metadataPrefixes = new ArrayList();
+ metadataPrefixes.add("http://purl.org/dc/elements/1.1/");
+ metadataPrefixes.add("http://purl.org/dc/terms/");
+
+ List metadataExclusion = new ArrayList();
+ metadataExclusion.add("http://purl.org/dc/terms/description");
+ metadataExclusion.add("http://purl.org/dc/elements/1.1/description");
+
+ lenient().when(config.getLabelPredicates()).thenReturn(labelPredicates);
+ lenient().when(config.getDescriptionPredicates()).thenReturn(descriptionPredicates);
+ lenient().when(config.getAttributionPredicates()).thenReturn(attributionPredicates);
+ lenient().when(config.getLicensePrecedence()).thenReturn(licensePrecedence);
+ lenient().when(config.getMetadataPrefixes()).thenReturn(metadataPrefixes);
+ lenient().when(config.getMetadataExclusion()).thenReturn(metadataExclusion);
+
+ lenient().when(config.getUrl()).thenReturn(FEDORA_URL);
+ lenient().when(config.getIdentifier()).thenReturn(FEDORA_PCDM_IDENTIFIER);
+ lenient().when(config.getContextAsMetadata()).thenReturn(true);
+ }
+
+ @Override
+ protected String getRepoRdfIdentifier() {
+ return FEDORA_PCDM_IDENTIFIER;
+ }
+
+ @Override
+ protected String getRepoBaseUrl() {
+ return FEDORA_URL + "/";
+ }
+
+}
diff --git a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCanvasManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCanvasManifestServiceTest.java
index 3a366fd..436b11b 100644
--- a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCanvasManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCanvasManifestServiceTest.java
@@ -1,17 +1,19 @@
package edu.tamu.iiif.service.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
import org.springframework.http.HttpHeaders;
@@ -20,6 +22,7 @@
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class FedoraPcdmCanvasManifestServiceTest extends AbstractFedoraPcdmManifestServiceTest {
@InjectMocks
@@ -40,7 +43,7 @@ public class FedoraPcdmCanvasManifestServiceTest extends AbstractFedoraPcdmManif
@Value("classpath:mock/fedora/json/canvas.json")
private Resource canvas;
- @Before
+ @BeforeEach
public void setup() {
setup(fedoraPcdmCanvasManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCollectionManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCollectionManifestServiceTest.java
index 630c741..5dc41b3 100644
--- a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCollectionManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmCollectionManifestServiceTest.java
@@ -1,16 +1,18 @@
package edu.tamu.iiif.service.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
@@ -18,11 +20,12 @@
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class FedoraPcdmCollectionManifestServiceTest extends AbstractFedoraPcdmManifestServiceTest {
@InjectMocks
private FedoraPcdmCollectionManifestService fedoraPcdmCollectionManifestService;
-
+
@Value("classpath:mock/fedora/rdf/collection_container.rdf")
private Resource collectionRdf;
@@ -38,7 +41,7 @@ public class FedoraPcdmCollectionManifestServiceTest extends AbstractFedoraPcdmM
@Value("classpath:mock/fedora/json/collection.json")
private Resource collection;
- @Before
+ @BeforeEach
public void setup() {
setup(fedoraPcdmCollectionManifestService);
}
@@ -48,8 +51,6 @@ public void testGetManifest() throws IOException, URISyntaxException {
when(restTemplate.getForObject(eq(FEDORA_URL + "/mwbObjects/TGWCatalog"), eq(String.class))).thenReturn(readFileToString(collectionRdf.getFile(), "UTF-8"));
when(restTemplate.getForObject(eq(FEDORA_URL + "/mwbObjects/TGWCatalog/Pages/ExCat0084"), eq(String.class))).thenReturn(readFileToString(itemRdf.getFile(), "UTF-8"));
when(restTemplate.getForObject(eq(FEDORA_URL + "/mwbObjects/TGWCatalog/Pages/ExCat0084/fcr:metadata"), eq(String.class))).thenReturn(readFileToString(itemRdf.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(FEDORA_URL + "/mwbObjects/TGWCatalog/Pages/ExCat0084/files/fcr:metadata"), eq(String.class))).thenReturn(readFileToString(itemFilesRdf.getFile(), "UTF-8"));
- when(restTemplate.getForObject(eq(FEDORA_URL + "/mwbObjects/TGWCatalog/Pages/ExCat0084/files/ExCat0084.jpg/fcr:metadata"), eq(String.class))).thenReturn(readFileToString(itemFilesEntryRdf.getFile(), "UTF-8"));
String manifest = fedoraPcdmCollectionManifestService.getManifest(ManifestRequest.of("mwbObjects/TGWCatalog", false));
assertEquals(objectMapper.readValue(collection.getFile(), JsonNode.class), objectMapper.readValue(manifest, JsonNode.class));
diff --git a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmImageManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmImageManifestServiceTest.java
index 932250f..c48a68f 100644
--- a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmImageManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmImageManifestServiceTest.java
@@ -1,17 +1,19 @@
package edu.tamu.iiif.service.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Matchers.any;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
@@ -19,6 +21,7 @@
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class FedoraPcdmImageManifestServiceTest extends AbstractFedoraPcdmManifestServiceTest {
@InjectMocks
@@ -27,7 +30,7 @@ public class FedoraPcdmImageManifestServiceTest extends AbstractFedoraPcdmManife
@Value("classpath:mock/fedora/json/image.json")
private Resource image;
- @Before
+ @BeforeEach
public void setup() {
setup(fedoraPcdmImageManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmPresentationManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmPresentationManifestServiceTest.java
index 47f0c4e..69a66ad 100644
--- a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmPresentationManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmPresentationManifestServiceTest.java
@@ -2,9 +2,9 @@
import static edu.tamu.iiif.model.ManifestType.PRESENTATION;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
@@ -12,19 +12,22 @@
import java.util.Arrays;
import java.util.Optional;
-import com.fasterxml.jackson.databind.JsonNode;
-
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
import org.springframework.http.HttpHeaders;
+import com.fasterxml.jackson.databind.JsonNode;
+
import edu.tamu.iiif.controller.ManifestRequest;
import edu.tamu.iiif.model.ManifestType;
import edu.tamu.iiif.model.RedisManifest;
+@ExtendWith(MockitoExtension.class)
public class FedoraPcdmPresentationManifestServiceTest extends AbstractFedoraPcdmManifestServiceTest {
@InjectMocks
@@ -51,7 +54,7 @@ public class FedoraPcdmPresentationManifestServiceTest extends AbstractFedoraPcd
@Value("classpath:mock/fedora/json/presentation-disallow.json")
private Resource presentationDisallow;
- @Before
+ @BeforeEach
public void setup() {
setup(fedoraPcdmPresentationManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmSequenceManifestServiceTest.java b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmSequenceManifestServiceTest.java
index bd853ac..5ef029d 100644
--- a/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmSequenceManifestServiceTest.java
+++ b/src/test/java/edu/tamu/iiif/service/fedora/pcdm/FedoraPcdmSequenceManifestServiceTest.java
@@ -1,25 +1,28 @@
package edu.tamu.iiif.service.fedora.pcdm;
import static org.apache.commons.io.FileUtils.readFileToString;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.eq;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
-import com.fasterxml.jackson.databind.JsonNode;
-
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
+import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;
import org.springframework.http.HttpHeaders;
+import com.fasterxml.jackson.databind.JsonNode;
+
import edu.tamu.iiif.controller.ManifestRequest;
+@ExtendWith(MockitoExtension.class)
public class FedoraPcdmSequenceManifestServiceTest extends AbstractFedoraPcdmManifestServiceTest {
@InjectMocks
@@ -40,7 +43,7 @@ public class FedoraPcdmSequenceManifestServiceTest extends AbstractFedoraPcdmMan
@Value("classpath:mock/fedora/json/sequence.json")
private Resource sequence;
- @Before
+ @BeforeEach
public void setup() {
setup(fedoraPcdmSequenceManifestService);
}
diff --git a/src/test/java/edu/tamu/iiif/utility/RdfModelUtilityTest.java b/src/test/java/edu/tamu/iiif/utility/RdfModelUtilityTest.java
index 23bc69c..c6a30c7 100644
--- a/src/test/java/edu/tamu/iiif/utility/RdfModelUtilityTest.java
+++ b/src/test/java/edu/tamu/iiif/utility/RdfModelUtilityTest.java
@@ -3,6 +3,9 @@
import static edu.tamu.iiif.constants.Constants.DUBLIN_CORE_TERMS_DESCRIPTION;
import static edu.tamu.iiif.constants.Constants.DUBLIN_CORE_TERMS_TITLE;
import static edu.tamu.iiif.constants.Constants.IANA_FIRST_PREDICATE;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import java.io.File;
import java.util.ArrayList;
@@ -12,36 +15,35 @@
import org.apache.jena.rdf.model.Model;
import org.apache.jena.rdf.model.Resource;
import org.assertj.core.util.Files;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
import edu.tamu.iiif.model.rdf.RdfResource;
-@RunWith(SpringRunner.class)
+@ExtendWith(SpringExtension.class)
public class RdfModelUtilityTest {
@Test
public void testCreate() {
- Assert.assertNotNull(new RdfModelUtility());
+ assertNotNull(new RdfModelUtility());
}
@Test
public void testCreateRdfModel() {
String rdf = Files.contentOf(new File("src/test/resources/mock/dspace/rdf/item.rdf"), "UTF-8");
Model model = RdfModelUtility.createRdfModel(rdf);
- Assert.assertNotNull(model);
+ assertNotNull(model);
}
@Test
public void testFindIdByPredicate() {
String rdf = Files.contentOf(new File("src/test/resources/mock/fedora/rdf/collection_container.rdf"), "UTF-8");
Model model = RdfModelUtility.createRdfModel(rdf);
- Assert.assertNotNull(model);
+ assertNotNull(model);
Optional firstId = RdfModelUtility.findObject(model, IANA_FIRST_PREDICATE);
- Assert.assertTrue(firstId.isPresent());
- Assert.assertEquals("http://localhost:9000/fcrepo/rest/mwbObjects/TGWCatalog/orderProxies/ExCat0001Proxy", firstId.get());
+ assertTrue(firstId.isPresent());
+ assertEquals("http://localhost:9000/fcrepo/rest/mwbObjects/TGWCatalog/orderProxies/ExCat0001Proxy", firstId.get());
}
@Test
@@ -50,10 +52,10 @@ public void testFindObject() {
Model model = RdfModelUtility.createRdfModel(rdf);
Resource resource = model.getResource("http://localhost:8080/rdf/resource/123456789/158308");
RdfResource rdfResource = new RdfResource(model, resource);
- Assert.assertNotNull(model);
+ assertNotNull(model);
Optional title = RdfModelUtility.findObject(rdfResource, DUBLIN_CORE_TERMS_TITLE);
- Assert.assertTrue(title.isPresent());
- Assert.assertEquals("Corvette", title.get());
+ assertTrue(title.isPresent());
+ assertEquals("Corvette", title.get());
}
@Test
@@ -62,10 +64,10 @@ public void getObjects() {
Model model = RdfModelUtility.createRdfModel(rdf);
Resource resource = model.getResource("http://localhost:8080/rdf/resource/123456789/158308");
RdfResource rdfResource = new RdfResource(model, resource);
- Assert.assertNotNull(model);
+ assertNotNull(model);
List values = RdfModelUtility.getObjects(rdfResource, DUBLIN_CORE_TERMS_TITLE);
- Assert.assertEquals(1, values.size());
- Assert.assertEquals("Corvette", values.get(0));
+ assertEquals(1, values.size());
+ assertEquals("Corvette", values.get(0));
}
@Test
@@ -74,14 +76,14 @@ public void getObjectsFromListOfProperties() {
Model model = RdfModelUtility.createRdfModel(rdf);
Resource resource = model.getResource("http://localhost:8080/rdf/resource/123456789/158308");
RdfResource rdfResource = new RdfResource(model, resource);
- Assert.assertNotNull(model);
+ assertNotNull(model);
List predicates = new ArrayList<>();
predicates.add(DUBLIN_CORE_TERMS_TITLE);
predicates.add(DUBLIN_CORE_TERMS_DESCRIPTION);
List values = RdfModelUtility.getObjects(rdfResource, predicates);
- Assert.assertEquals(2, values.size());
- Assert.assertEquals("Corvette", values.get(0));
- Assert.assertEquals("A fast car", values.get(1));
+ assertEquals(2, values.size());
+ assertEquals("Corvette", values.get(0));
+ assertEquals("A fast car", values.get(1));
}
}
diff --git a/src/test/java/edu/tamu/iiif/utility/StringUtilityTest.java b/src/test/java/edu/tamu/iiif/utility/StringUtilityTest.java
index 72ee057..f8edba4 100644
--- a/src/test/java/edu/tamu/iiif/utility/StringUtilityTest.java
+++ b/src/test/java/edu/tamu/iiif/utility/StringUtilityTest.java
@@ -1,31 +1,33 @@
package edu.tamu.iiif.utility;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.test.context.junit4.SpringRunner;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
-@RunWith(SpringRunner.class)
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
+
+@ExtendWith(SpringExtension.class)
public class StringUtilityTest {
@Test
public void testCreate() {
- Assert.assertNotNull(new StringUtility());
+ assertNotNull(new StringUtility());
}
@Test
public void testJoinPath() {
- Assert.assertEquals("src/main/resources", StringUtility.joinPath("src", "main", "resources"));
+ assertEquals("src/main/resources", StringUtility.joinPath("src", "main", "resources"));
}
@Test
public void testEncode() {
- Assert.assertEquals("SGVsbG8sIFdvcmxkIQ==", StringUtility.encode("Hello, World!"));
+ assertEquals("SGVsbG8sIFdvcmxkIQ==", StringUtility.encode("Hello, World!"));
}
@Test
public void testDecode() {
- Assert.assertEquals("Hello, World!", StringUtility.decode("SGVsbG8sIFdvcmxkIQ=="));
+ assertEquals("Hello, World!", StringUtility.decode("SGVsbG8sIFdvcmxkIQ=="));
}
}
diff --git a/src/test/resources/application.yml b/src/test/resources/application.yml
index 2d051f8..07796f7 100644
--- a/src/test/resources/application.yml
+++ b/src/test/resources/application.yml
@@ -2,12 +2,16 @@ server:
context-path:
port: 9001
+# (is overwritten by logback-test.xml)
logging:
- file: ir-iiif-service.log
+ file:
+ name: logs/ir-iiif-service-test.log
level:
- edu.tamu.iiif: INFO
- org.springframework: INFO
- path: /var/logs/iiif
+ com.zaxxer: ERROR
+ edu.tamu.iiif: WARN
+ org:
+ hibernate: OFF
+ springframework: ERROR
spring:
redis:
diff --git a/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml
new file mode 100644
index 0000000..f6a703d
--- /dev/null
+++ b/src/test/resources/logback-test.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+