diff --git a/doc/CODE_CONVENTIONS.adoc b/doc/CODE_CONVENTIONS.adoc index baa598c..377c007 100644 --- a/doc/CODE_CONVENTIONS.adoc +++ b/doc/CODE_CONVENTIONS.adoc @@ -110,7 +110,7 @@ common API for all ConfAPI products. ==== Annotations -Resource interfaces have to contain all necessary `javax.ws.rs` and Swagger annotations (used for automated +Resource interfaces have to contain all necessary `jakarta.ws.rs` and Swagger annotations (used for automated documentation generation). The only exception is the `@Path` annotation for the resource class itself as otherwise the framework will try to instantiate the resource interface. @@ -189,7 +189,7 @@ public class EntitiesResourceImpl implements EntitiesResource { @Inject public EntitiesResourceImpl(EntitiesService entitiesService) { - this.entitiesService = checkNotNull(entitiesService); + this.entitiesService = entitiesService; } @Override diff --git a/pom.xml b/pom.xml index 4dca6ee..b7acf7f 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ confapi-commons - 0.3.1-SNAPSHOT + 0.4.0-SNAPSHOT jar ConfAPI Commons @@ -56,25 +56,19 @@ - 3.9 - 30.0-jre - 2.2 - 6.1.5.Final - 1.9.13-atlassian-5 - 2.2.4 - 1 - 2.3.1 - 1.12 - 1.1.1 - 4.13.1 - 2.17.1 - 1.18.28 + 3.14.0 + 8.0.1.Final + 2.16.1 + 6.0.0-M2 + 3.1.0-M1 + 3.1.0 + 3.1.5 + 5.10.2 + 1.18.30 3.0.2 - 2.28.2 - 5.2.4.RELEASE - 2.1.1 - 1.1.0.Final - 1.4 + 5.10.0 + 5.3.32 + 2.2.20 8 8 @@ -84,6 +78,7 @@ + io.swagger.core.v3 swagger-annotations @@ -97,9 +92,11 @@ - junit - junit + org.junit + junit-bom ${junit.version} + pom + import @@ -109,13 +106,13 @@ - org.hamcrest - hamcrest-core - ${hamcrest.version} + org.mockito + mockito-junit-jupiter + ${mockito.version} - com.sun.jersey + org.glassfish.jersey.core jersey-client ${jersey-client.version} @@ -133,47 +130,45 @@ - javax.el - javax.el-api - ${javax.el-api.version} + jakarta.el + jakarta.el-api + ${jakarta.el-api.version} - org.glassfish.web - javax.el - ${javax.el-api.version} + jakarta.validation + jakarta.validation-api + ${jakarta.validation-api.version} - org.apache.logging.log4j - log4j-api - ${log4j.version} - test + org.apache.commons + commons-lang3 + ${commons-lang3.version} - org.apache.logging.log4j - log4j-core - ${log4j.version} - test + jakarta.ws.rs + jakarta.ws.rs-api + ${jakarta.ws.rs-api.version} - org.apache.wink - wink-client - ${wink-client.version} + org.springframework + spring-context + ${spring-context.version} - org.codehaus.jackson - jackson-jaxrs - ${jackson-jaxrs.version} + com.fasterxml.jackson.core + jackson-core + ${jackson.version} - org.codehaus.jackson - jackson-core-asl - ${jackson-jaxrs.version} + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + ${jackson.version} @@ -199,79 +194,46 @@ - javax.inject - javax.inject - ${javax.inject.version} - provided - - - - javax.ws.rs - jsr311-api - ${jsr311-api.version} - provided - - - - javax.xml.bind - jaxb-api - ${jaxb-api.version} + jakarta.ws.rs + jakarta.ws.rs-api provided org.apache.commons commons-lang3 - ${commons-lang3.version} provided - javax.validation - validation-api - ${validation-api.version} + jakarta.validation + jakarta.validation-api provided org.springframework spring-context - ${spring-context.version} - provided - - - - org.slf4j - slf4j-api - 1.7.30 - provided - - - - org.codehaus.jackson - jackson-core-asl provided - org.codehaus.jackson - jackson-jaxrs + com.fasterxml.jackson.core + jackson-core provided - - com.google.guava - guava - ${guava.version} + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider provided - junit - junit + org.junit.jupiter + junit-jupiter test @@ -282,13 +244,13 @@ - org.hamcrest - hamcrest-core + org.mockito + mockito-junit-jupiter test - com.sun.jersey + org.glassfish.jersey.core jersey-client test @@ -306,32 +268,8 @@ - javax.el - javax.el-api - test - - - - org.glassfish.web - javax.el - test - - - - org.apache.logging.log4j - log4j-api - test - - - - org.apache.logging.log4j - log4j-core - test - - - - org.apache.wink - wink-client + jakarta.el + jakarta.el-api test diff --git a/src/main/java/de/aservo/confapi/commons/exception/BadRequestException.java b/src/main/java/de/aservo/confapi/commons/exception/BadRequestException.java index 6059867..b6f5ea9 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/BadRequestException.java +++ b/src/main/java/de/aservo/confapi/commons/exception/BadRequestException.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.exception; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.WebApplicationException; +import jakarta.ws.rs.core.Response; -import static javax.ws.rs.core.Response.Status.BAD_REQUEST; +import static jakarta.ws.rs.core.Response.Status.BAD_REQUEST; public class BadRequestException extends WebApplicationException { diff --git a/src/main/java/de/aservo/confapi/commons/exception/InternalServerErrorException.java b/src/main/java/de/aservo/confapi/commons/exception/InternalServerErrorException.java index a12e633..31b99cf 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/InternalServerErrorException.java +++ b/src/main/java/de/aservo/confapi/commons/exception/InternalServerErrorException.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.exception; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.WebApplicationException; +import jakarta.ws.rs.core.Response; -import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR; +import static jakarta.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR; public class InternalServerErrorException extends WebApplicationException { diff --git a/src/main/java/de/aservo/confapi/commons/exception/NotFoundException.java b/src/main/java/de/aservo/confapi/commons/exception/NotFoundException.java index 39e964a..e1ec7e2 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/NotFoundException.java +++ b/src/main/java/de/aservo/confapi/commons/exception/NotFoundException.java @@ -1,20 +1,20 @@ package de.aservo.confapi.commons.exception; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.WebApplicationException; +import jakarta.ws.rs.core.Response; -import static javax.ws.rs.core.Response.Status.NOT_FOUND; +import static jakarta.ws.rs.core.Response.Status.NOT_FOUND; public class NotFoundException extends WebApplicationException { private static final Response.Status STATUS = NOT_FOUND; public NotFoundException(String message) { - super(new Exception(message), STATUS); + super(message, STATUS); } public NotFoundException(Throwable cause) { - super(cause, STATUS); + super(cause.getMessage(), STATUS); } } diff --git a/src/main/java/de/aservo/confapi/commons/exception/ServiceUnavailableException.java b/src/main/java/de/aservo/confapi/commons/exception/ServiceUnavailableException.java index fa0202f..f244aec 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/ServiceUnavailableException.java +++ b/src/main/java/de/aservo/confapi/commons/exception/ServiceUnavailableException.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.exception; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.WebApplicationException; +import jakarta.ws.rs.core.Response; -import static javax.ws.rs.core.Response.Status.SERVICE_UNAVAILABLE; +import static jakarta.ws.rs.core.Response.Status.SERVICE_UNAVAILABLE; public class ServiceUnavailableException extends WebApplicationException { diff --git a/src/main/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapper.java b/src/main/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapper.java index a518e19..491d371 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapper.java +++ b/src/main/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapper.java @@ -1,11 +1,11 @@ package de.aservo.confapi.commons.exception.mapper; +import com.fasterxml.jackson.databind.JsonMappingException; import de.aservo.confapi.commons.model.ErrorCollection; -import org.codehaus.jackson.map.JsonMappingException; -import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.ext.ExceptionMapper; +import jakarta.ws.rs.ext.Provider; @Provider public class JsonMappingExceptionMapper implements ExceptionMapper { diff --git a/src/main/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapper.java b/src/main/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapper.java index d0de7fd..3e0b943 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapper.java +++ b/src/main/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapper.java @@ -2,9 +2,9 @@ import de.aservo.confapi.commons.model.ErrorCollection; -import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.ext.ExceptionMapper; +import jakarta.ws.rs.ext.Provider; @Provider public class RuntimeExceptionMapper implements ExceptionMapper { diff --git a/src/main/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapper.java b/src/main/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapper.java index dc6ed71..95636ed 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapper.java +++ b/src/main/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapper.java @@ -2,10 +2,10 @@ import de.aservo.confapi.commons.model.ErrorCollection; -import javax.validation.ValidationException; -import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; +import jakarta.validation.ValidationException; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.ext.ExceptionMapper; +import jakarta.ws.rs.ext.Provider; import java.util.Arrays; @Provider diff --git a/src/main/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapper.java b/src/main/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapper.java index 7df922c..0c0ee8d 100644 --- a/src/main/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapper.java +++ b/src/main/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapper.java @@ -2,10 +2,10 @@ import de.aservo.confapi.commons.model.ErrorCollection; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; -import javax.ws.rs.ext.Provider; +import jakarta.ws.rs.WebApplicationException; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.ext.ExceptionMapper; +import jakarta.ws.rs.ext.Provider; @Provider public class WebApplicationExceptionMapper implements ExceptionMapper { diff --git a/src/main/java/de/aservo/confapi/commons/http/PATCH.java b/src/main/java/de/aservo/confapi/commons/http/PATCH.java index 1aded92..4b0df81 100644 --- a/src/main/java/de/aservo/confapi/commons/http/PATCH.java +++ b/src/main/java/de/aservo/confapi/commons/http/PATCH.java @@ -1,6 +1,6 @@ package de.aservo.confapi.commons.http; -import javax.ws.rs.HttpMethod; +import jakarta.ws.rs.HttpMethod; import java.lang.annotation.Documented; import java.lang.annotation.Retention; import java.lang.annotation.Target; diff --git a/src/main/java/de/aservo/confapi/commons/model/AbstractDirectoryBean.java b/src/main/java/de/aservo/confapi/commons/model/AbstractDirectoryBean.java index 22240a2..09ad505 100644 --- a/src/main/java/de/aservo/confapi/commons/model/AbstractDirectoryBean.java +++ b/src/main/java/de/aservo/confapi/commons/model/AbstractDirectoryBean.java @@ -3,10 +3,10 @@ import de.aservo.confapi.commons.constants.ConfAPI; import lombok.Data; import lombok.NoArgsConstructor; -import org.codehaus.jackson.annotate.JsonSubTypes; -import org.codehaus.jackson.annotate.JsonTypeInfo; +import com.fasterxml.jackson.annotation.JsonSubTypes; +import com.fasterxml.jackson.annotation.JsonTypeInfo; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import java.util.Date; diff --git a/src/main/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBean.java b/src/main/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBean.java index 48c705c..203af37 100644 --- a/src/main/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBean.java +++ b/src/main/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBean.java @@ -5,7 +5,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.builder.EqualsExclude; import org.apache.commons.lang3.builder.HashCodeExclude; -import org.codehaus.jackson.annotate.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonIgnore; import javax.xml.bind.annotation.XmlElement; diff --git a/src/main/java/de/aservo/confapi/commons/model/ApplicationLinkBean.java b/src/main/java/de/aservo/confapi/commons/model/ApplicationLinkBean.java index 6cdbb91..a5b1f91 100644 --- a/src/main/java/de/aservo/confapi/commons/model/ApplicationLinkBean.java +++ b/src/main/java/de/aservo/confapi/commons/model/ApplicationLinkBean.java @@ -4,7 +4,7 @@ import lombok.Data; import lombok.NoArgsConstructor; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import java.net.URI; diff --git a/src/main/java/de/aservo/confapi/commons/model/DirectoryCrowdBean.java b/src/main/java/de/aservo/confapi/commons/model/DirectoryCrowdBean.java index 736d729..a4d9a84 100644 --- a/src/main/java/de/aservo/confapi/commons/model/DirectoryCrowdBean.java +++ b/src/main/java/de/aservo/confapi/commons/model/DirectoryCrowdBean.java @@ -5,7 +5,7 @@ import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import java.net.URI; diff --git a/src/main/java/de/aservo/confapi/commons/model/DirectoryLdapBean.java b/src/main/java/de/aservo/confapi/commons/model/DirectoryLdapBean.java index 336b135..fa065fe 100644 --- a/src/main/java/de/aservo/confapi/commons/model/DirectoryLdapBean.java +++ b/src/main/java/de/aservo/confapi/commons/model/DirectoryLdapBean.java @@ -5,7 +5,7 @@ import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceImpl.java index 48831b1..94a8f0e 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceImpl.java @@ -4,8 +4,8 @@ import de.aservo.confapi.commons.model.ApplicationLinksBean; import de.aservo.confapi.commons.rest.api.ApplicationLinksResource; import de.aservo.confapi.commons.service.api.ApplicationLinksService; +import jakarta.ws.rs.core.Response; -import javax.ws.rs.core.Response; import java.util.UUID; public abstract class AbstractApplicationLinksResourceImpl implements ApplicationLinksResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceImpl.java index 2687c65..43d4169 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceImpl.java @@ -5,16 +5,14 @@ import de.aservo.confapi.commons.rest.api.DirectoriesResource; import de.aservo.confapi.commons.service.api.DirectoriesService; -import javax.ws.rs.core.Response; - -import static com.google.common.base.Preconditions.checkNotNull; +import jakarta.ws.rs.core.Response; public abstract class AbstractDirectoriesResourceImpl implements DirectoriesResource { private final DirectoriesService directoriesService; public AbstractDirectoriesResourceImpl(DirectoriesService directoriesService) { - this.directoriesService = checkNotNull(directoriesService); + this.directoriesService = directoriesService; } @Override diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceImpl.java index 8351ea2..939d500 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceImpl.java @@ -5,7 +5,7 @@ import de.aservo.confapi.commons.rest.api.GadgetsResource; import de.aservo.confapi.commons.service.api.GadgetsService; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; public abstract class AbstractGadgetsResourceImpl implements GadgetsResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceImpl.java index ce9faec..bcc9a81 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceImpl.java @@ -5,7 +5,7 @@ import de.aservo.confapi.commons.rest.api.LicensesResource; import de.aservo.confapi.commons.service.api.LicensesService; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; public abstract class AbstractLicensesResourceImpl implements LicensesResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceImpl.java index 2c818cb..9a97224 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceImpl.java @@ -5,7 +5,7 @@ import de.aservo.confapi.commons.rest.api.MailServerResource; import de.aservo.confapi.commons.service.api.MailServerService; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; public class AbstractMailServerResourceImpl implements MailServerResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractPingResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractPingResourceImpl.java index 6f4f914..845671b 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractPingResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractPingResourceImpl.java @@ -2,7 +2,7 @@ import de.aservo.confapi.commons.rest.api.PingResource; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; public abstract class AbstractPingResourceImpl implements PingResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceImpl.java index b31a285..33ca07f 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceImpl.java @@ -4,7 +4,7 @@ import de.aservo.confapi.commons.rest.api.SettingsBrandingResource; import de.aservo.confapi.commons.service.api.SettingsBrandingService; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; import java.io.InputStream; public abstract class AbstractSettingsBrandingResourceImpl implements SettingsBrandingResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceImpl.java index 1b0b50c..799f3b8 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceImpl.java @@ -4,7 +4,7 @@ import de.aservo.confapi.commons.rest.api.SettingsResource; import de.aservo.confapi.commons.service.api.SettingsService; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; public abstract class AbstractSettingsResourceImpl implements SettingsResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/AbstractUsersResourceImpl.java b/src/main/java/de/aservo/confapi/commons/rest/AbstractUsersResourceImpl.java index 86d9e07..6d8b34a 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/AbstractUsersResourceImpl.java +++ b/src/main/java/de/aservo/confapi/commons/rest/AbstractUsersResourceImpl.java @@ -4,7 +4,7 @@ import de.aservo.confapi.commons.rest.api.UsersResource; import de.aservo.confapi.commons.service.api.UsersService; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; public class AbstractUsersResourceImpl implements UsersResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/ApplicationLinksResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/ApplicationLinksResource.java index aa0e3f8..899a8fa 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/ApplicationLinksResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/ApplicationLinksResource.java @@ -9,19 +9,19 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.DefaultValue; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.DefaultValue; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import java.util.UUID; public interface ApplicationLinksResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/DirectoriesResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/DirectoriesResource.java index 011fc41..6ea6360 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/DirectoriesResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/DirectoriesResource.java @@ -9,19 +9,19 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.DefaultValue; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.DefaultValue; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface DirectoriesResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/GadgetsResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/GadgetsResource.java index 93ecc98..8156204 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/GadgetsResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/GadgetsResource.java @@ -9,18 +9,18 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface GadgetsResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/LicensesResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/LicensesResource.java index 9e3f3a5..e075993 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/LicensesResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/LicensesResource.java @@ -9,13 +9,13 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface LicensesResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/MailServerPopResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/MailServerPopResource.java index bb9448b..2de4917 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/MailServerPopResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/MailServerPopResource.java @@ -8,14 +8,14 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface MailServerPopResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/MailServerSmtpResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/MailServerSmtpResource.java index 810153b..4eebfc2 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/MailServerSmtpResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/MailServerSmtpResource.java @@ -8,14 +8,14 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface MailServerSmtpResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/PingResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/PingResource.java index 65bda09..e388cd9 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/PingResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/PingResource.java @@ -4,10 +4,10 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.ws.rs.GET; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface PingResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/SettingsBrandingResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/SettingsBrandingResource.java index a8c330c..388dfa4 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/SettingsBrandingResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/SettingsBrandingResource.java @@ -8,14 +8,14 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import java.io.InputStream; public interface SettingsBrandingResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/SettingsResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/SettingsResource.java index fae4d79..1655524 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/SettingsResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/SettingsResource.java @@ -8,13 +8,13 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.PUT; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface SettingsResource { diff --git a/src/main/java/de/aservo/confapi/commons/rest/api/UsersResource.java b/src/main/java/de/aservo/confapi/commons/rest/api/UsersResource.java index 2f4f8f4..6348501 100644 --- a/src/main/java/de/aservo/confapi/commons/rest/api/UsersResource.java +++ b/src/main/java/de/aservo/confapi/commons/rest/api/UsersResource.java @@ -8,15 +8,15 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; -import javax.validation.constraints.NotNull; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; public interface UsersResource { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/ApplicationLinksService.java b/src/main/java/de/aservo/confapi/commons/service/api/ApplicationLinksService.java index e8a1cf4..3da7b19 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/ApplicationLinksService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/ApplicationLinksService.java @@ -3,7 +3,7 @@ import de.aservo.confapi.commons.model.ApplicationLinkBean; import de.aservo.confapi.commons.model.ApplicationLinksBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import java.util.UUID; public interface ApplicationLinksService { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/DirectoriesService.java b/src/main/java/de/aservo/confapi/commons/service/api/DirectoriesService.java index 3f6f294..4a925fd 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/DirectoriesService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/DirectoriesService.java @@ -3,7 +3,7 @@ import de.aservo.confapi.commons.model.AbstractDirectoryBean; import de.aservo.confapi.commons.model.DirectoriesBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; /** * The User directory service interface. diff --git a/src/main/java/de/aservo/confapi/commons/service/api/GadgetsService.java b/src/main/java/de/aservo/confapi/commons/service/api/GadgetsService.java index 1e9c03d..173a50b 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/GadgetsService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/GadgetsService.java @@ -3,7 +3,7 @@ import de.aservo.confapi.commons.model.GadgetBean; import de.aservo.confapi.commons.model.GadgetsBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; public interface GadgetsService { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/LicensesService.java b/src/main/java/de/aservo/confapi/commons/service/api/LicensesService.java index 9b720b1..1da32fc 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/LicensesService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/LicensesService.java @@ -3,7 +3,7 @@ import de.aservo.confapi.commons.model.LicenseBean; import de.aservo.confapi.commons.model.LicensesBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; public interface LicensesService { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/MailServerService.java b/src/main/java/de/aservo/confapi/commons/service/api/MailServerService.java index fa3bb99..86d580d 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/MailServerService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/MailServerService.java @@ -3,7 +3,7 @@ import de.aservo.confapi.commons.model.MailServerPopBean; import de.aservo.confapi.commons.model.MailServerSmtpBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; public interface MailServerService { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/SettingsBrandingService.java b/src/main/java/de/aservo/confapi/commons/service/api/SettingsBrandingService.java index 6aa4054..44b8825 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/SettingsBrandingService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/SettingsBrandingService.java @@ -2,7 +2,7 @@ import de.aservo.confapi.commons.model.SettingsBrandingColorSchemeBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import java.io.InputStream; public interface SettingsBrandingService { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/SettingsService.java b/src/main/java/de/aservo/confapi/commons/service/api/SettingsService.java index f674e35..5d84052 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/SettingsService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/SettingsService.java @@ -2,7 +2,7 @@ import de.aservo.confapi.commons.model.SettingsBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; public interface SettingsService { diff --git a/src/main/java/de/aservo/confapi/commons/service/api/UsersService.java b/src/main/java/de/aservo/confapi/commons/service/api/UsersService.java index 905f2ca..2ee7328 100644 --- a/src/main/java/de/aservo/confapi/commons/service/api/UsersService.java +++ b/src/main/java/de/aservo/confapi/commons/service/api/UsersService.java @@ -2,7 +2,7 @@ import de.aservo.confapi.commons.model.UserBean; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import java.util.Collection; import java.util.List; diff --git a/src/main/java/de/aservo/confapi/commons/util/BeanValidationUtil.java b/src/main/java/de/aservo/confapi/commons/util/BeanValidationUtil.java index dec006c..091c96d 100644 --- a/src/main/java/de/aservo/confapi/commons/util/BeanValidationUtil.java +++ b/src/main/java/de/aservo/confapi/commons/util/BeanValidationUtil.java @@ -1,10 +1,7 @@ package de.aservo.confapi.commons.util; -import javax.validation.ConstraintViolation; -import javax.validation.Validation; -import javax.validation.ValidationException; -import javax.validation.Validator; -import javax.validation.ValidatorFactory; +import jakarta.validation.*; + import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -15,14 +12,16 @@ public class BeanValidationUtil { /** - * Validates the given bean using javax.validation impl from hibernate reference. + * Validates the given bean using Validation from hibernate reference. * * @param bean the bean */ public static void validate(Object bean) { - ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory(); - Validator validator = validatorFactory.getValidator(); - processValidationResult(validator.validate(bean)); + Validator validator; + try (ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory()) { + validator = validatorFactory.getValidator(); + processValidationResult(validator.validate(bean)); + } } /** diff --git a/src/test/java/de/aservo/confapi/commons/exception/ServiceUnavailableExceptionTest.java b/src/test/java/de/aservo/confapi/commons/exception/ServiceUnavailableExceptionTest.java index 0e3fa7f..47b18f7 100644 --- a/src/test/java/de/aservo/confapi/commons/exception/ServiceUnavailableExceptionTest.java +++ b/src/test/java/de/aservo/confapi/commons/exception/ServiceUnavailableExceptionTest.java @@ -1,13 +1,14 @@ package de.aservo.confapi.commons.exception; import de.aservo.confapi.commons.junit.AbstractExceptionTest; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.core.Response; import static de.aservo.confapi.commons.exception.ServiceUnavailableException.HEADER_RETRY_AFTER; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; + public class ServiceUnavailableExceptionTest extends AbstractExceptionTest { diff --git a/src/test/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapperTest.java b/src/test/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapperTest.java index 839ba35..4777053 100644 --- a/src/test/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapperTest.java +++ b/src/test/java/de/aservo/confapi/commons/exception/mapper/JsonMappingExceptionMapperTest.java @@ -1,13 +1,12 @@ package de.aservo.confapi.commons.exception.mapper; +import com.fasterxml.jackson.databind.JsonMappingException; import de.aservo.confapi.commons.model.ErrorCollection; -import org.codehaus.jackson.map.JsonMappingException; -import org.junit.Test; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; - -import static javax.ws.rs.core.Response.Status.BAD_REQUEST; -import static org.junit.Assert.assertEquals; +import static jakarta.ws.rs.core.Response.Status.BAD_REQUEST; +import static org.junit.jupiter.api.Assertions.assertEquals; public class JsonMappingExceptionMapperTest { @@ -18,14 +17,10 @@ public void testResponse() { final JsonMappingExceptionMapper jsonMappingExceptionMapper = new JsonMappingExceptionMapper(); final JsonMappingException jsonMappingException = new JsonMappingException(MESSAGE); final Response response = jsonMappingExceptionMapper.toResponse(jsonMappingException); - - assertEquals("Json mapping exceptions should be mapped to bad request exceptions", - BAD_REQUEST.getStatusCode(), response.getStatus()); - final ErrorCollection errorCollection = (ErrorCollection) response.getEntity(); - assertEquals("The response error collection size is wrong", - 1, errorCollection.getErrorMessages().size()); + assertEquals(BAD_REQUEST.getStatusCode(), response.getStatus(), "Json mapping exceptions should be mapped to bad request exceptions"); + assertEquals(1, errorCollection.getErrorMessages().size(), "The response error collection size is wrong"); } } diff --git a/src/test/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapperTest.java b/src/test/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapperTest.java index b37116b..57398e2 100644 --- a/src/test/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapperTest.java +++ b/src/test/java/de/aservo/confapi/commons/exception/mapper/RuntimeExceptionMapperTest.java @@ -1,12 +1,11 @@ package de.aservo.confapi.commons.exception.mapper; import de.aservo.confapi.commons.model.ErrorCollection; -import org.junit.Test; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; - -import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR; -import static org.junit.Assert.assertEquals; +import static jakarta.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR; +import static org.junit.jupiter.api.Assertions.assertEquals; public class RuntimeExceptionMapperTest { @@ -17,14 +16,10 @@ public void testResponse() { final RuntimeExceptionMapper runtimeExceptionMapper = new RuntimeExceptionMapper(); final RuntimeException runtimeException = new NullPointerException(MESSAGE); final Response response = runtimeExceptionMapper.toResponse(runtimeException); - - assertEquals("Runtime exceptions should be mapped to internal server error", - INTERNAL_SERVER_ERROR.getStatusCode(), response.getStatus()); - final ErrorCollection errorCollection = (ErrorCollection) response.getEntity(); - assertEquals("The response error collection size is wrong", - 1, errorCollection.getErrorMessages().size()); + assertEquals(INTERNAL_SERVER_ERROR.getStatusCode(), response.getStatus(), "Runtime exceptions should be mapped to internal server error"); + assertEquals(1, errorCollection.getErrorMessages().size(), "The response error collection size is wrong"); } } diff --git a/src/test/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapperTest.java b/src/test/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapperTest.java index 22d4f4d..16b6be8 100644 --- a/src/test/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapperTest.java +++ b/src/test/java/de/aservo/confapi/commons/exception/mapper/ValidationExceptionMapperTest.java @@ -1,13 +1,12 @@ package de.aservo.confapi.commons.exception.mapper; import de.aservo.confapi.commons.model.ErrorCollection; -import org.junit.Test; +import jakarta.validation.ValidationException; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.validation.ValidationException; -import javax.ws.rs.core.Response; - -import static javax.ws.rs.core.Response.Status.BAD_REQUEST; -import static org.junit.Assert.assertEquals; +import static jakarta.ws.rs.core.Response.Status.BAD_REQUEST; +import static org.junit.jupiter.api.Assertions.assertEquals; public class ValidationExceptionMapperTest { @@ -18,14 +17,10 @@ public void testResponse() { final ValidationExceptionMapper validationExceptionMapper = new ValidationExceptionMapper(); final ValidationException validationException = new ValidationException(MESSAGES); final Response response = validationExceptionMapper.toResponse(validationException); - - assertEquals("Validation exceptions should be mapped to bad request exceptions", - BAD_REQUEST.getStatusCode(), response.getStatus()); - final ErrorCollection errorCollection = (ErrorCollection) response.getEntity(); - assertEquals("The response error collection size is wrong", - MESSAGES.split("\n").length, errorCollection.getErrorMessages().size()); + assertEquals(BAD_REQUEST.getStatusCode(), response.getStatus(), "Validation exceptions should be mapped to bad request exceptions"); + assertEquals(MESSAGES.split("\n").length, errorCollection.getErrorMessages().size(), "The response error collection size is wrong"); } } diff --git a/src/test/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapperTest.java b/src/test/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapperTest.java index 2b2e8d3..70efd1f 100644 --- a/src/test/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapperTest.java +++ b/src/test/java/de/aservo/confapi/commons/exception/mapper/WebApplicationExceptionMapperTest.java @@ -2,11 +2,10 @@ import de.aservo.confapi.commons.exception.NotFoundException; import de.aservo.confapi.commons.model.ErrorCollection; -import org.junit.Test; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; public class WebApplicationExceptionMapperTest { @@ -17,17 +16,11 @@ public void testResponse() { final WebApplicationExceptionMapper webApplicationExceptionMapper = new WebApplicationExceptionMapper(); final NotFoundException notFoundException = new NotFoundException(MESSAGE); final Response response = webApplicationExceptionMapper.toResponse(notFoundException); - - assertEquals("Web application exceptions should be mapped to their own response status", - notFoundException.getResponse().getStatus(), response.getStatus()); - final ErrorCollection errorCollection = (ErrorCollection) response.getEntity(); - - assertEquals("The response error collection size is wrong", - 1, errorCollection.getErrorMessages().size()); - final String errorMessage = errorCollection.getErrorMessages().iterator().next(); + assertEquals(notFoundException.getResponse().getStatus(), response.getStatus(), "Web application exceptions should be mapped to their own response status"); + assertEquals(1, errorCollection.getErrorMessages().size(), "The response error collection size is wrong"); assertEquals(MESSAGE, errorMessage); } diff --git a/src/test/java/de/aservo/confapi/commons/junit/AbstractBeanTest.java b/src/test/java/de/aservo/confapi/commons/junit/AbstractBeanTest.java index 778f717..4a51e89 100644 --- a/src/test/java/de/aservo/confapi/commons/junit/AbstractBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/junit/AbstractBeanTest.java @@ -1,11 +1,10 @@ package de.aservo.confapi.commons.junit; -import com.google.common.base.CaseFormat; -import org.junit.Test; +import org.junit.jupiter.api.Test; import javax.xml.bind.annotation.XmlRootElement; -import static org.junit.Assert.*; +import static org.junit.jupiter.api.Assertions.*; public abstract class AbstractBeanTest extends AbstractTest { @@ -14,8 +13,7 @@ public abstract class AbstractBeanTest extends AbstractTest { @Test public void beanClassNameShouldEndWithSuffixBean() { final String beanClassName = getBaseClass().getSimpleName(); - assertTrue("The model class name should end with suffix " + CLASS_SUFFIX, - beanClassName.endsWith(CLASS_SUFFIX)); + assertTrue(beanClassName.endsWith(CLASS_SUFFIX), "The model class name should end with suffix " + CLASS_SUFFIX); } @Test @@ -24,8 +22,30 @@ public void beanClassNameAndXmlRootElementShouldMatch() { final String beanClassBaseName = beanClassName.substring(0, beanClassName.length() - CLASS_SUFFIX.length()); final XmlRootElement xmlRootElement = getBaseClass().getAnnotation(XmlRootElement.class); assertNotNull(xmlRootElement); - assertEquals("The model class camel-case base name and the xml root element kebab-case base name should match", - CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_HYPHEN, beanClassBaseName), xmlRootElement.name()); + assertEquals(camelCaseToSnakeCase(beanClassBaseName), xmlRootElement.name(), + "The model class camel-case base name and the xml root element kebab-case base name should match"); + } + + private static String camelCaseToSnakeCase( + final String camelCase) { + + if (camelCase == null || camelCase.isEmpty()) { + return camelCase; + } + + final StringBuilder snakeCase = new StringBuilder(); + snakeCase.append(Character.toLowerCase(camelCase.charAt(0))); + + for (int i = 1; i < camelCase.length(); i++) { + char charAt = camelCase.charAt(i); + if (Character.isUpperCase(charAt)) { + snakeCase.append('-').append(Character.toLowerCase(charAt)); + } else { + snakeCase.append(charAt); + } + } + + return snakeCase.toString(); } } diff --git a/src/test/java/de/aservo/confapi/commons/junit/AbstractExceptionTest.java b/src/test/java/de/aservo/confapi/commons/junit/AbstractExceptionTest.java index c30f8ec..52d9ca2 100644 --- a/src/test/java/de/aservo/confapi/commons/junit/AbstractExceptionTest.java +++ b/src/test/java/de/aservo/confapi/commons/junit/AbstractExceptionTest.java @@ -1,11 +1,11 @@ package de.aservo.confapi.commons.junit; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import javax.ws.rs.WebApplicationException; +import jakarta.ws.rs.WebApplicationException; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; public abstract class AbstractExceptionTest extends AbstractTest { @@ -16,14 +16,12 @@ public abstract class AbstractExceptionTest extends AbstractTest { @Test public void exceptionClassNameShouldEndWithSuffixException() { final String beanClassName = getBaseClass().getSimpleName(); - assertTrue("The model class name should end with suffix " + CLASS_SUFFIX, - beanClassName.endsWith(CLASS_SUFFIX)); + assertTrue(beanClassName.endsWith(CLASS_SUFFIX), "The model class name should end with suffix " + CLASS_SUFFIX); } @Test public void exceptionClassShouldExtendWebApplicationException() { - assertTrue("The exception class should extend WebApplicationException", - WebApplicationException.class.isAssignableFrom(getBaseClass())); + assertTrue(WebApplicationException.class.isAssignableFrom(getBaseClass()), "The exception class should extend WebApplicationException"); } @Test @@ -34,10 +32,8 @@ public void exceptionConstructorsShouldBehaveEqually() throws Exception { final WebApplicationException throwableException = (WebApplicationException) baseClass.getConstructor(Throwable.class) .newInstance(new Exception(MESSAGE)); - assertEquals("The message for both constructors should be equal", - throwableException.getMessage(), messageException.getMessage()); - assertEquals("The status code for both constructors should be equal", - throwableException.getResponse().getStatus(), messageException.getResponse().getStatus()); + assertEquals(throwableException.getMessage(), messageException.getMessage(), "The message for both constructors should be equal"); + assertEquals(throwableException.getResponse().getStatus(), messageException.getResponse().getStatus(), "The status code for both constructors should be equal"); } } diff --git a/src/test/java/de/aservo/confapi/commons/junit/AbstractTest.java b/src/test/java/de/aservo/confapi/commons/junit/AbstractTest.java index 4142b77..ea2a901 100644 --- a/src/test/java/de/aservo/confapi/commons/junit/AbstractTest.java +++ b/src/test/java/de/aservo/confapi/commons/junit/AbstractTest.java @@ -1,7 +1,7 @@ package de.aservo.confapi.commons.junit; import static de.aservo.confapi.commons.util.StringUtil.baseName; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertTrue; public abstract class AbstractTest { @@ -19,8 +19,7 @@ public Class getBaseClass() { private Class findBaseClass() { final String testClassName = getClass().getCanonicalName(); - assertTrue("The test class should end with suffix Test", - testClassName.endsWith(TEST_CLASS_SUFFIX)); + assertTrue(testClassName.endsWith(TEST_CLASS_SUFFIX), "The test class should end with suffix Test"); final Class baseClass; final String baseClassName = baseName(testClassName, TEST_CLASS_SUFFIX); diff --git a/src/test/java/de/aservo/confapi/commons/junit/ResourceAssert.java b/src/test/java/de/aservo/confapi/commons/junit/ResourceAssert.java index 38feafe..d1cdc6a 100644 --- a/src/test/java/de/aservo/confapi/commons/junit/ResourceAssert.java +++ b/src/test/java/de/aservo/confapi/commons/junit/ResourceAssert.java @@ -1,16 +1,16 @@ package de.aservo.confapi.commons.junit; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.HEAD; -import javax.ws.rs.HttpMethod; -import javax.ws.rs.OPTIONS; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.HEAD; +import jakarta.ws.rs.HttpMethod; +import jakarta.ws.rs.OPTIONS; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; import java.lang.reflect.Method; -import static org.junit.Assert.*; +import static org.junit.jupiter.api.Assertions.*; public class ResourceAssert { diff --git a/src/test/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBeanTest.java index d18e43c..0d649e9 100644 --- a/src/test/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/AbstractMailServerProtocolBeanTest.java @@ -1,13 +1,13 @@ package de.aservo.confapi.commons.model; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -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; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractMailServerProtocolBeanTest { @Test diff --git a/src/test/java/de/aservo/confapi/commons/model/DirectoriesBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/DirectoriesBeanTest.java index 7c926b4..8cd48ca 100644 --- a/src/test/java/de/aservo/confapi/commons/model/DirectoriesBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/DirectoriesBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class DirectoriesBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/DirectoryCrowdBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/DirectoryCrowdBeanTest.java index 1b0da00..87b4052 100644 --- a/src/test/java/de/aservo/confapi/commons/model/DirectoryCrowdBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/DirectoryCrowdBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class DirectoryCrowdBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/DirectoryDelegatingBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/DirectoryDelegatingBeanTest.java index 78f4e83..0dfeffe 100644 --- a/src/test/java/de/aservo/confapi/commons/model/DirectoryDelegatingBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/DirectoryDelegatingBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class DirectoryDelegatingBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/DirectoryInternalBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/DirectoryInternalBeanTest.java index b03887b..924a763 100644 --- a/src/test/java/de/aservo/confapi/commons/model/DirectoryInternalBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/DirectoryInternalBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class DirectoryInternalBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/DirectoryLdapBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/DirectoryLdapBeanTest.java index 96f9ae1..02cd095 100644 --- a/src/test/java/de/aservo/confapi/commons/model/DirectoryLdapBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/DirectoryLdapBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class DirectoryLdapBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/ErrorCollectionTest.java b/src/test/java/de/aservo/confapi/commons/model/ErrorCollectionTest.java index 7d6f18c..05b8164 100644 --- a/src/test/java/de/aservo/confapi/commons/model/ErrorCollectionTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/ErrorCollectionTest.java @@ -1,18 +1,15 @@ package de.aservo.confapi.commons.model; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +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 java.util.Arrays; -import static org.hamcrest.CoreMatchers.hasItems; -import static org.hamcrest.Matchers.containsInAnyOrder; -import static org.hamcrest.core.Is.is; -import static org.junit.Assert.*; +import static org.junit.jupiter.api.Assertions.*; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class ErrorCollectionTest { public static final String FIRST_ERROR_MESSAGE = "First error message"; @@ -20,7 +17,7 @@ public class ErrorCollectionTest { private ErrorCollection errorCollection; - @Before + @BeforeEach public void setup() { errorCollection = new ErrorCollection(); } @@ -34,8 +31,8 @@ public void testDefaultConstructor() { public void testAddErrorMessage() { errorCollection.addErrorMessage(FIRST_ERROR_MESSAGE); assertTrue(errorCollection.hasAnyErrors()); - assertThat(errorCollection.getErrorMessages().size(), is(1)); - assertThat(errorCollection.getErrorMessages(), hasItems(FIRST_ERROR_MESSAGE)); + assertEquals(1, errorCollection.getErrorMessages().size()); + assertTrue(errorCollection.getErrorMessages().contains(FIRST_ERROR_MESSAGE)); } @Test @@ -48,8 +45,8 @@ public void testAddNullErrorMessage() { public void testAddErrorMessageList() { errorCollection.addErrorMessages(Arrays.asList(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE)); assertTrue(errorCollection.hasAnyErrors()); - assertThat(errorCollection.getErrorMessages().size(), is(2)); - assertThat(errorCollection.getErrorMessages(), containsInAnyOrder(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE)); + assertEquals(2, errorCollection.getErrorMessages().size()); + assertTrue(errorCollection.getErrorMessages().containsAll(Arrays.asList(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE))); } @Test @@ -62,16 +59,15 @@ public void testAddNullErrorMessageList() { public void testOfErrorMessages() { errorCollection = ErrorCollection.of(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE); assertTrue(errorCollection.hasAnyErrors()); - assertThat(errorCollection.getErrorMessages().size(), is(2)); - assertThat(errorCollection.getErrorMessages(), containsInAnyOrder(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE)); + assertEquals(2, errorCollection.getErrorMessages().size()); + assertTrue(errorCollection.getErrorMessages().containsAll(Arrays.asList(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE))); } @Test public void testOfErrorMessageList() { errorCollection = ErrorCollection.of(Arrays.asList(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE)); assertTrue(errorCollection.hasAnyErrors()); - assertThat(errorCollection.getErrorMessages().size(), is(2)); - assertThat(errorCollection.getErrorMessages(), containsInAnyOrder(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE)); + assertEquals(2, errorCollection.getErrorMessages().size()); + assertTrue(errorCollection.getErrorMessages().containsAll(Arrays.asList(FIRST_ERROR_MESSAGE, SECOND_ERROR_MESSAGE))); } - } diff --git a/src/test/java/de/aservo/confapi/commons/model/GadgetBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/GadgetBeanTest.java index 9edcbc6..fac4b2d 100644 --- a/src/test/java/de/aservo/confapi/commons/model/GadgetBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/GadgetBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class GadgetBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/GadgetsBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/GadgetsBeanTest.java index 3729371..5716475 100644 --- a/src/test/java/de/aservo/confapi/commons/model/GadgetsBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/GadgetsBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class GadgetsBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/GroupBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/GroupBeanTest.java index 3e25c82..0ca4ea7 100644 --- a/src/test/java/de/aservo/confapi/commons/model/GroupBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/GroupBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class GroupBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/LicenseBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/LicenseBeanTest.java index 7908416..bc0d577 100644 --- a/src/test/java/de/aservo/confapi/commons/model/LicenseBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/LicenseBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class LicenseBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/MailServerPopBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/MailServerPopBeanTest.java index 6065eb4..d38a772 100644 --- a/src/test/java/de/aservo/confapi/commons/model/MailServerPopBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/MailServerPopBeanTest.java @@ -1,10 +1,10 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class MailServerPopBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/MailServerSmtpBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/MailServerSmtpBeanTest.java index a7cb82a..b29b343 100644 --- a/src/test/java/de/aservo/confapi/commons/model/MailServerSmtpBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/MailServerSmtpBeanTest.java @@ -1,10 +1,10 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class MailServerSmtpBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/SettingsBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/SettingsBeanTest.java index cdbcceb..de9b625 100644 --- a/src/test/java/de/aservo/confapi/commons/model/SettingsBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/SettingsBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class SettingsBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/SettingsBrandingColorSchemeBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/SettingsBrandingColorSchemeBeanTest.java index 6b9d67c..8a9b5d6 100644 --- a/src/test/java/de/aservo/confapi/commons/model/SettingsBrandingColorSchemeBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/SettingsBrandingColorSchemeBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class SettingsBrandingColorSchemeBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/model/UserBeanTest.java b/src/test/java/de/aservo/confapi/commons/model/UserBeanTest.java index 5a2405d..ee280a2 100644 --- a/src/test/java/de/aservo/confapi/commons/model/UserBeanTest.java +++ b/src/test/java/de/aservo/confapi/commons/model/UserBeanTest.java @@ -1,9 +1,9 @@ package de.aservo.confapi.commons.model; import de.aservo.confapi.commons.junit.AbstractBeanTest; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class UserBeanTest extends AbstractBeanTest { } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceTest.java index c5b2dcd..482aca0 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractApplicationLinksResourceTest.java @@ -3,21 +3,20 @@ import de.aservo.confapi.commons.model.ApplicationLinkBean; import de.aservo.confapi.commons.model.ApplicationLinksBean; import de.aservo.confapi.commons.service.api.ApplicationLinksService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; - -import javax.ws.rs.core.Response; +import org.mockito.junit.jupiter.MockitoExtension; import java.util.UUID; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractApplicationLinksResourceTest { @Mock @@ -25,7 +24,7 @@ public class AbstractApplicationLinksResourceTest { private TestApplicationLinksResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestApplicationLinksResourceImpl(applicationLinksService); } @@ -101,12 +100,12 @@ public void testAddApplicationLink() { @Test public void testDeleteApplicationLinks() { resource.deleteApplicationLinks(true); - assertTrue("Delete Successful", true); + assertTrue(true, "Delete Successful"); } @Test public void testDeleteApplicationLink() { resource.deleteApplicationLink(UUID.randomUUID()); - assertTrue("Delete Successful", true); + assertTrue(true, "Delete Successful"); } } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceTest.java index 8e66d5d..3afb16a 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractDirectoriesResourceTest.java @@ -4,21 +4,21 @@ import de.aservo.confapi.commons.model.DirectoriesBean; import de.aservo.confapi.commons.model.DirectoryCrowdBean; import de.aservo.confapi.commons.service.api.DirectoriesService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; import java.util.Arrays; import java.util.Collections; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractDirectoriesResourceTest { @Mock @@ -26,7 +26,7 @@ public class AbstractDirectoriesResourceTest { private TestDirectoriesResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestDirectoriesResourceImpl(directoriesService); } @@ -102,13 +102,13 @@ public void testAddDirectory() { @Test public void testDeleteDirectories() { resource.deleteDirectories(true); - assertTrue("Delete Successful", true); + assertTrue(true, "Delete Successful"); } @Test public void testDeleteDirectory() { resource.deleteDirectory(1L); - assertTrue("Delete Successful", true); + assertTrue(true, "Delete Successful"); } } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceTest.java index 933d0dc..628d255 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractGadgetsResourceTest.java @@ -3,19 +3,18 @@ import de.aservo.confapi.commons.model.GadgetBean; import de.aservo.confapi.commons.model.GadgetsBean; import de.aservo.confapi.commons.service.api.GadgetsService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractGadgetsResourceTest { @Mock @@ -23,7 +22,7 @@ public class AbstractGadgetsResourceTest { private TestGadgetsResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestGadgetsResourceImpl(gadgetsService); } @@ -96,12 +95,12 @@ public void testAddGadget() { @Test public void testDeleteGadgets() { resource.deleteGadgets(true); - assertTrue("Delete Successful", true); + assertTrue(true, "Delete Successful"); } @Test public void testDeleteGadget() { resource.deleteGadget(1L); - assertTrue("Delete Successful", true); + assertTrue(true, "Delete Successful"); } } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceTest.java index d24f12d..8f610d1 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractLicensesResourceTest.java @@ -3,18 +3,17 @@ import de.aservo.confapi.commons.model.LicenseBean; import de.aservo.confapi.commons.model.LicensesBean; import de.aservo.confapi.commons.service.api.LicensesService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractLicensesResourceTest { @Mock @@ -22,7 +21,7 @@ public class AbstractLicensesResourceTest { private TestLicensesResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestLicensesResourceImpl(licensesService); } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceTest.java index 4fefaaf..8f3afe7 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractMailServerResourceTest.java @@ -3,18 +3,17 @@ import de.aservo.confapi.commons.model.MailServerPopBean; import de.aservo.confapi.commons.model.MailServerSmtpBean; import de.aservo.confapi.commons.service.api.MailServerService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractMailServerResourceTest { @Mock @@ -22,7 +21,7 @@ public class AbstractMailServerResourceTest { private TestMailServerResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestMailServerResourceImpl(mailServerService); } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractPingResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractPingResourceTest.java index 8f7c38d..a133272 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractPingResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractPingResourceTest.java @@ -1,24 +1,22 @@ package de.aservo.confapi.commons.rest; import de.aservo.confapi.commons.rest.api.PingResource; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.junit.MockitoJUnitRunner; +import jakarta.ws.rs.core.Response; +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 javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.CALLS_REAL_METHODS; import static org.mockito.Mockito.mock; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractPingResourceTest { private AbstractPingResourceImpl pingResource; - @Before + @BeforeEach public void setup() { // we can use mock with CALLS_REAL_METHODS here because PingResource uses no services pingResource = mock(AbstractPingResourceImpl.class, CALLS_REAL_METHODS); @@ -27,7 +25,7 @@ public void setup() { @Test public void testGetPing() { final Response pingResponse = pingResource.getPing(); - Assert.assertEquals(PingResource.PONG, pingResponse.getEntity().toString()); + assertEquals(PingResource.PONG, pingResponse.getEntity().toString()); } } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceTest.java index d48a898..7ad1ad5 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsBrandingResourceTest.java @@ -2,21 +2,21 @@ import de.aservo.confapi.commons.model.SettingsBrandingColorSchemeBean; import de.aservo.confapi.commons.service.api.SettingsBrandingService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; import java.io.ByteArrayInputStream; import java.io.InputStream; -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 static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractSettingsBrandingResourceTest { @Mock @@ -24,7 +24,7 @@ public class AbstractSettingsBrandingResourceTest { private TestSettingsBrandingResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestSettingsBrandingResourceImpl(brandingService); } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceTest.java index 2bce285..04f3c99 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractSettingsResourceTest.java @@ -2,18 +2,17 @@ import de.aservo.confapi.commons.model.SettingsBean; import de.aservo.confapi.commons.service.api.SettingsService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractSettingsResourceTest { @Mock @@ -21,7 +20,7 @@ public class AbstractSettingsResourceTest { private TestSettingsResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestSettingsResourceImpl(settingsService); } diff --git a/src/test/java/de/aservo/confapi/commons/rest/AbstractUsersResourceTest.java b/src/test/java/de/aservo/confapi/commons/rest/AbstractUsersResourceTest.java index d8ed121..69dd27c 100644 --- a/src/test/java/de/aservo/confapi/commons/rest/AbstractUsersResourceTest.java +++ b/src/test/java/de/aservo/confapi/commons/rest/AbstractUsersResourceTest.java @@ -2,18 +2,17 @@ import de.aservo.confapi.commons.model.UserBean; import de.aservo.confapi.commons.service.api.UsersService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.doReturn; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class AbstractUsersResourceTest { @Mock @@ -21,7 +20,7 @@ public class AbstractUsersResourceTest { private TestUsersResourceImpl resource; - @Before + @BeforeEach public void setup() { resource = new TestUsersResourceImpl(usersService); } diff --git a/src/test/java/de/aservo/confapi/commons/util/BeanValidationUtilTest.java b/src/test/java/de/aservo/confapi/commons/util/BeanValidationUtilTest.java index 378af72..55ec255 100644 --- a/src/test/java/de/aservo/confapi/commons/util/BeanValidationUtilTest.java +++ b/src/test/java/de/aservo/confapi/commons/util/BeanValidationUtilTest.java @@ -1,13 +1,15 @@ package de.aservo.confapi.commons.util; +import jakarta.validation.ConstraintViolation; +import jakarta.validation.ValidationException; import org.hibernate.validator.internal.engine.ConstraintViolationImpl; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import javax.validation.ConstraintViolation; -import javax.validation.ValidationException; import java.util.HashSet; import java.util.Set; +import static org.junit.jupiter.api.Assertions.assertThrows; + public class BeanValidationUtilTest { @Test @@ -16,11 +18,14 @@ public void testThrowNoValidationException() { BeanValidationUtil.processValidationResult(violations); } - @Test(expected = ValidationException.class) + @Test public void testThrowValidationException() { Set> violations = new HashSet<>(); violations.add(ConstraintViolationImpl.forBeanValidation("", null, null, "", null, null, null, null, null, null, null)); - BeanValidationUtil.processValidationResult(violations); + + assertThrows(ValidationException.class, () -> { + BeanValidationUtil.processValidationResult(violations); + }); } } diff --git a/src/test/java/de/aservo/confapi/commons/util/ConversionUtilTest.java b/src/test/java/de/aservo/confapi/commons/util/ConversionUtilTest.java index 85d0670..30b3c63 100644 --- a/src/test/java/de/aservo/confapi/commons/util/ConversionUtilTest.java +++ b/src/test/java/de/aservo/confapi/commons/util/ConversionUtilTest.java @@ -1,45 +1,46 @@ package de.aservo.confapi.commons.util; -import org.junit.Assert; -import org.junit.Test; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; public class ConversionUtilTest { @Test public void testConvertLong() { - Assert.assertEquals(0, ConversionUtil.toLong(null)); - Assert.assertEquals(0, ConversionUtil.toLong("")); - Assert.assertEquals(100, ConversionUtil.toLong("100")); - Assert.assertEquals(234234234234234L, ConversionUtil.toLong("234234234234234")); + assertEquals(0, ConversionUtil.toLong(null)); + assertEquals(0, ConversionUtil.toLong("")); + assertEquals(100, ConversionUtil.toLong("100")); + assertEquals(234234234234234L, ConversionUtil.toLong("234234234234234")); } @Test public void testConvertInt() { - Assert.assertEquals(0, ConversionUtil.toInt(null)); - Assert.assertEquals(0, ConversionUtil.toInt("")); - Assert.assertEquals(100, ConversionUtil.toInt("100")); + assertEquals(0, ConversionUtil.toInt(null)); + assertEquals(0, ConversionUtil.toInt("")); + assertEquals(100, ConversionUtil.toInt("100")); } @Test public void testConvertDouble() { - Assert.assertEquals(0, ConversionUtil.toDouble(null), 0); - Assert.assertEquals(0, ConversionUtil.toDouble(""), 0); - Assert.assertEquals(100, ConversionUtil.toDouble("100"), 0); - Assert.assertEquals(100.1231234, ConversionUtil.toDouble("100.1231234"), 0); + assertEquals(0, ConversionUtil.toDouble(null), 0); + assertEquals(0, ConversionUtil.toDouble(""), 0); + assertEquals(100, ConversionUtil.toDouble("100"), 0); + assertEquals(100.1231234, ConversionUtil.toDouble("100.1231234"), 0); } @Test public void testConvertBoolean() { - Assert.assertFalse(ConversionUtil.toBoolean(null)); - Assert.assertFalse(ConversionUtil.toBoolean("")); - Assert.assertFalse(ConversionUtil.toBoolean("false")); - Assert.assertFalse(ConversionUtil.toBoolean("False")); - Assert.assertFalse(ConversionUtil.toBoolean("no")); - Assert.assertFalse(ConversionUtil.toBoolean("0")); - Assert.assertTrue(ConversionUtil.toBoolean("1")); - Assert.assertTrue(ConversionUtil.toBoolean("true")); - Assert.assertTrue(ConversionUtil.toBoolean("TRUE")); - Assert.assertTrue(ConversionUtil.toBoolean("yes")); - Assert.assertTrue(ConversionUtil.toBoolean("ja")); + assertFalse(ConversionUtil.toBoolean(null)); + assertFalse(ConversionUtil.toBoolean("")); + assertFalse(ConversionUtil.toBoolean("false")); + assertFalse(ConversionUtil.toBoolean("False")); + assertFalse(ConversionUtil.toBoolean("no")); + assertFalse(ConversionUtil.toBoolean("0")); + assertTrue(ConversionUtil.toBoolean("1")); + assertTrue(ConversionUtil.toBoolean("true")); + assertTrue(ConversionUtil.toBoolean("TRUE")); + assertTrue(ConversionUtil.toBoolean("yes")); + assertTrue(ConversionUtil.toBoolean("ja")); } } diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractLicenseResourceFuncTest.java b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractLicenseResourceFuncTest.java index 6049c3a..80a6c12 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractLicenseResourceFuncTest.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractLicenseResourceFuncTest.java @@ -3,26 +3,34 @@ import de.aservo.confapi.commons.constants.ConfAPI; import de.aservo.confapi.commons.model.LicenseBean; import de.aservo.confapi.commons.model.LicensesBean; -import org.apache.wink.client.ClientAuthenticationException; -import org.apache.wink.client.ClientResponse; -import org.apache.wink.client.Resource; -import org.junit.Test; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; import java.util.Collection; -import static org.junit.Assert.*; +import static org.junit.jupiter.api.Assertions.*; public abstract class AbstractLicenseResourceFuncTest { @Test public void testGetLicenses() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES).build(); + // Build the request for the licenses resource + final Invocation.Builder licenseResource = ResourceBuilder.builder(ConfAPI.LICENSES).build(); - ClientResponse clientResponse = licensesResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); + // Execute the GET request and receive the response + final Response response = licenseResource.get(); - Collection licenses = clientResponse.getEntity(LicensesBean.class).getLicenses(); + // Check the HTTP status code of the response + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + + // Extract the entity (LicensesBean) from the response and get the licenses collection + final LicensesBean licensesBean = response.readEntity(LicensesBean.class); + final Collection licenses = licensesBean.getLicenses(); + + // Perform your assertions assertNotNull(licenses); assertNotEquals(0, licenses.size()); assertNotNull(licenses.iterator().next().getOrganization()); @@ -30,65 +38,79 @@ public void testGetLicenses() { @Test public void testSetLicenses() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES).build(); + final Invocation.Builder licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES).build(); - ClientResponse response = licensesResource.put(getExampleBean()); - assertEquals(Response.Status.OK.getStatusCode(), response.getStatusCode()); + try (final Response response = licensesResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON_TYPE))) { + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + } - response = licensesResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), response.getStatusCode()); + final Response response = licensesResource.get(); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); assertEquals(getExampleBean().getLicenses().iterator().next().getDescription(), - response.getEntity(LicensesBean.class).getLicenses().iterator().next().getDescription()); + response.readEntity(LicensesBean.class).getLicenses().iterator().next().getDescription()); } @Test public void testAddLicenses() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES).build(); + final Invocation.Builder licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES).build(); + final LicenseBean licenseBean = getExampleBean().getLicenses().iterator().next(); - LicenseBean licenseBean = getExampleBean().getLicenses().iterator().next(); - ClientResponse response = licensesResource.post(licenseBean); - assertEquals(Response.Status.OK.getStatusCode(), response.getStatusCode()); + try (final Response response = licensesResource.post(Entity.entity(licenseBean, MediaType.APPLICATION_JSON_TYPE))) { + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + } - response = licensesResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), response.getStatusCode()); + final Response response = licensesResource.get(); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); assertEquals(licenseBean.getDescription(), - response.getEntity(LicensesBean.class).getLicenses().iterator().next().getDescription()); + response.readEntity(LicensesBean.class).getLicenses().iterator().next().getDescription()); } - @Test(expected = ClientAuthenticationException.class) + @Test public void testGetLicensesUnauthenticated() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) + final Invocation.Builder licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) .username("wrong") .password("password") .build(); - licensesResource.get(); + + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), licensesResource.get().getStatus()); } - @Test(expected = ClientAuthenticationException.class) + @Test public void testSetLicensesUnauthenticated() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) + final Invocation.Builder licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) .username("wrong") .password("password") .build(); - licensesResource.put(getExampleBean()); + + final int status; + try (final Response response = licensesResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON_TYPE))) { + status = response.getStatus(); + } + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), status); } @Test public void testGetLicensesUnauthorized() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) + final Invocation.Builder licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) .username("user") .password("user") .build(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), licensesResource.get().getStatusCode()); + + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), licensesResource.get().getStatus()); } @Test public void testSetLicensesUnauthorized() { - Resource licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) + final Invocation.Builder licensesResource = ResourceBuilder.builder(ConfAPI.LICENSES) .username("user") .password("user") .build(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), licensesResource.put(getExampleBean()).getStatusCode()); + + final int status; + try (final Response response = licensesResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON_TYPE))) { + status = response.getStatus(); + } + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), status); } protected LicensesBean getExampleBean() { diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerPopResourceFuncTest.java b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerPopResourceFuncTest.java index 58f04d7..6cbb0de 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerPopResourceFuncTest.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerPopResourceFuncTest.java @@ -2,80 +2,91 @@ import de.aservo.confapi.commons.constants.ConfAPI; import de.aservo.confapi.commons.model.MailServerPopBean; -import org.apache.wink.client.ClientAuthenticationException; -import org.apache.wink.client.ClientResponse; -import org.apache.wink.client.Resource; -import org.junit.Test; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; - -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; public abstract class AbstractMailServerPopResourceFuncTest { @Test - public void testGetMailserverPop() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP).build(); - - ClientResponse clientResponse = mailserverResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); + public void testGetMailServerPop() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP).build(); - MailServerPopBean mailServerPopBean = clientResponse.getEntity(MailServerPopBean.class); + final Response response = mailServerResource.get(); + final MailServerPopBean mailServerPopBean = response.readEntity(MailServerPopBean.class); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); assertNotNull(mailServerPopBean); } @Test - public void testSetMailserverPop() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP).build(); - - ClientResponse clientResponse = mailserverResource.put(getExampleBean()); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); - - MailServerPopBean mailServerPopBean = clientResponse.getEntity(MailServerPopBean.class); - assertMailserverBeanAgainstExample(mailServerPopBean); + public void testSetMailServerPop() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP).build(); + + final int status; + final MailServerPopBean mailServerPopBean; + try (final Response response = mailServerResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON_TYPE))) { + status = response.getStatus(); + mailServerPopBean = response.readEntity(MailServerPopBean.class); + } + assertEquals(Response.Status.OK.getStatusCode(), status); + assertMailServerBeanAgainstExample(mailServerPopBean); } - @Test(expected = ClientAuthenticationException.class) - public void testGetMailserverPopUnauthenticated() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) + @Test + public void testGetMailServerPopUnauthenticated() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) .username("wrong") .password("password") .build(); - mailserverResource.get(); + + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), mailServerResource.get().getStatus()); } - @Test(expected = ClientAuthenticationException.class) - public void testSetMailserverPopUnauthenticated() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) + @Test + public void testSetMailServerPopUnauthenticated() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) .username("wrong") .password("password") .build(); - mailserverResource.put(getExampleBean()); + + final int status; + try (final Response response = mailServerResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON_TYPE))) { + status = response.getStatus(); + } + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), status); } @Test - public void testGetMailserverPopUnauthorized() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) + public void testGetMailServerPopUnauthorized() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) .username("user") .password("user") .build(); - mailserverResource.get(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), mailserverResource.put(getExampleBean()).getStatusCode()); + + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), mailServerResource.get().getStatus()); } @Test - public void testSetMailserverPopUnauthorized() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) + public void testSetMailServerPopUnauthorized() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_POP) .username("user") .password("user") .build(); - mailserverResource.put(getExampleBean()); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), mailserverResource.put(getExampleBean()).getStatusCode()); + + final int status; + try (final Response response = mailServerResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON_TYPE))) { + status = response.getStatus(); + } + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), status); } - protected void assertMailserverBeanAgainstExample(MailServerPopBean bean) { - MailServerPopBean exampleBean = getExampleBean(); + protected void assertMailServerBeanAgainstExample(MailServerPopBean bean) { + final MailServerPopBean exampleBean = getExampleBean(); //although field 'password' in 'AbstractMailServerProtocolBean' is annotated with '@EqualsExclude' equals still yields false if //not the same. Thus, we need to reset the example password manually exampleBean.setPassword(null); diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerSmtpResourceFuncTest.java b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerSmtpResourceFuncTest.java index ba0a3be..40d317a 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerSmtpResourceFuncTest.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractMailServerSmtpResourceFuncTest.java @@ -2,82 +2,94 @@ import de.aservo.confapi.commons.constants.ConfAPI; import de.aservo.confapi.commons.model.MailServerSmtpBean; -import org.apache.wink.client.ClientAuthenticationException; -import org.apache.wink.client.ClientResponse; -import org.apache.wink.client.Resource; -import org.junit.Test; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; - -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; public abstract class AbstractMailServerSmtpResourceFuncTest { @Test - public void testGetMailserverImap() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP).build(); - - ClientResponse clientResponse = mailserverResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); + public void testGetMailServerSmtp() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP).build(); - MailServerSmtpBean mailServerSmtpBean = clientResponse.getEntity(MailServerSmtpBean.class); + final Response response = mailServerResource.get(); + final MailServerSmtpBean mailServerSmtpBean = response.readEntity(MailServerSmtpBean.class); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); assertNotNull(mailServerSmtpBean); } @Test - public void testSetMailserverImap() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP).build(); - - ClientResponse clientResponse = mailserverResource.put(getExampleBean()); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); - - MailServerSmtpBean mailServerSmtpBean = clientResponse.getEntity(MailServerSmtpBean.class); - assertMailserverBeanAgainstExample(mailServerSmtpBean); + public void testSetMailServerSmtp() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP).build(); + + final int status; + final MailServerSmtpBean mailServerSmtpBean; + try (final Response response = mailServerResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + mailServerSmtpBean = response.readEntity(MailServerSmtpBean.class); + } + assertEquals(Response.Status.OK.getStatusCode(), status); + assertMailServerBeanAgainstExample(mailServerSmtpBean); } - @Test(expected = ClientAuthenticationException.class) - public void testGetMailserverImapUnauthenticated() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) + @Test // Unauthorized + public void testGetMailServerSmtpUnauthenticated() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) .username("wrong") .password("password") .build(); - mailserverResource.get(); + + final Response response = mailServerResource.get(); + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), response.getStatus()); } - @Test(expected = ClientAuthenticationException.class) - public void testSetMailserverImapUnauthenticated() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) + @Test // Unauthorized + public void testSetMailServerSmtpUnauthenticated() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) .username("wrong") .password("password") .build(); - mailserverResource.put(getExampleBean()); + + final int status; + try (final Response response = mailServerResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + } + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), status); } @Test - public void testGetMailserverImapUnauthorized() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) + public void testGetMailServerSmtpUnauthorized() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) .username("user") .password("user") .build(); - mailserverResource.get(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), mailserverResource.put(getExampleBean()).getStatusCode()); + + final Response response = mailServerResource.get(); + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), response.getStatus()); } @Test - public void testSetMailserverImapUnauthorized() { - Resource mailserverResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) + public void testSetMailServerSmtpUnauthorized() { + final Invocation.Builder mailServerResource = ResourceBuilder.builder(ConfAPI.MAIL_SERVER + "/" + ConfAPI.MAIL_SERVER_SMTP) .username("user") .password("user") .build(); - mailserverResource.put(getExampleBean()); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), mailserverResource.put(getExampleBean()).getStatusCode()); + + final int status; + try (final Response response = mailServerResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + } + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), status); } - protected void assertMailserverBeanAgainstExample(MailServerSmtpBean bean) { - MailServerSmtpBean exampleBean = getExampleBean(); - //although field 'password' in 'AbstractMailServerProtocolBean' is annotated with '@EqualsExclude' equals still yields false if - //not the same. Thus, we need to reset the example password manually + protected void assertMailServerBeanAgainstExample(MailServerSmtpBean bean) { + final MailServerSmtpBean exampleBean = getExampleBean(); + // Reset the example password manually as it's excluded from equals check exampleBean.setPassword(null); assertEquals(exampleBean, bean); } diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractPingResourceFuncTest.java b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractPingResourceFuncTest.java index 273071c..3283c15 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractPingResourceFuncTest.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractPingResourceFuncTest.java @@ -1,19 +1,18 @@ package it.de.aservo.confapi.commons.rest; import de.aservo.confapi.commons.constants.ConfAPI; -import org.apache.wink.client.Resource; -import org.junit.Test; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; - -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; public abstract class AbstractPingResourceFuncTest { @Test public void testGetPing() { - Resource pingResource = ResourceBuilder.builder(ConfAPI.PING).acceptMediaType(MediaType.TEXT_PLAIN).build(); - assertEquals(Response.Status.OK.getStatusCode(), pingResource.get().getStatusCode()); + final Invocation.Builder pingResource = ResourceBuilder.builder(ConfAPI.PING).acceptMediaType(MediaType.TEXT_PLAIN).build(); + assertEquals(Response.Status.OK.getStatusCode(), pingResource.get().getStatus()); } } diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractSettingsResourceFuncTest.java b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractSettingsResourceFuncTest.java index fc2700d..c29c0b2 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractSettingsResourceFuncTest.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractSettingsResourceFuncTest.java @@ -2,70 +2,91 @@ import de.aservo.confapi.commons.constants.ConfAPI; import de.aservo.confapi.commons.model.SettingsBean; -import org.apache.wink.client.ClientAuthenticationException; -import org.apache.wink.client.ClientResponse; -import org.apache.wink.client.Resource; -import org.junit.Test; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.Response; - -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; public abstract class AbstractSettingsResourceFuncTest { @Test public void testGetSettings() { - Resource settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS).build(); - ClientResponse clientResponse = settingsResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); - assertNotNull(clientResponse.getEntity(SettingsBean.class).getTitle()); + final Invocation.Builder settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS).build(); + final Response response = settingsResource.get(); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + assertNotNull(response.readEntity(SettingsBean.class).getTitle()); } @Test public void testSetSettings() { - Resource settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS).build(); - assertEquals(Response.Status.OK.getStatusCode(), settingsResource.put(getExampleBean()).getStatusCode()); + final Invocation.Builder settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS).build(); + try (final Response response = settingsResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON))) { + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + } - ClientResponse clientResponse = settingsResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); - assertEquals(getExampleBean(), clientResponse.getEntity(SettingsBean.class)); + final Response response = settingsResource.get(); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + assertEquals(getExampleBean(), response.readEntity(SettingsBean.class)); } - @Test(expected = ClientAuthenticationException.class) + @Test // Unauthorized public void testGetSettingsUnauthenticated() { - Resource settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) + final Invocation.Builder settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) .username("wrong") .password("password") .build(); - settingsResource.get(); + + final int status; + try (final Response response = settingsResource.get()) { + status = response.getStatus(); + } + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), status); } - @Test(expected = ClientAuthenticationException.class) + @Test // Unauthorized public void testSetSettingsUnauthenticated() { - Resource settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) + final Invocation.Builder settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) .username("wrong") .password("password") .build(); - settingsResource.put(getExampleBean()); + + final int status; + try (final Response response = settingsResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + } + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), status); } @Test public void testGetSettingsUnauthorized() { - Resource settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) + final Invocation.Builder settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) .username("user") .password("user") .build(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), settingsResource.get().getStatusCode()); + + final int status; + try (final Response response = settingsResource.get()) { + status = response.getStatus(); + } + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), status); } @Test public void testSetSettingsUnauthorized() { - Resource settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) + final Invocation.Builder settingsResource = ResourceBuilder.builder(ConfAPI.SETTINGS) .username("user") .password("user") .build(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), settingsResource.put(getExampleBean()).getStatusCode()); + + final int status; + try (final Response response = settingsResource.put(Entity.entity(getExampleBean(), MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + } + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), status); } protected SettingsBean getExampleBean() { diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractUserResourceFuncTest.java b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractUserResourceFuncTest.java index 6f8df9a..26e9751 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/AbstractUserResourceFuncTest.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/AbstractUserResourceFuncTest.java @@ -2,16 +2,14 @@ import de.aservo.confapi.commons.constants.ConfAPI; import de.aservo.confapi.commons.model.UserBean; -import org.apache.wink.client.ClientAuthenticationException; -import org.apache.wink.client.ClientResponse; -import org.apache.wink.client.Resource; -import org.junit.Test; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import org.junit.jupiter.api.Test; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; - -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; public abstract class AbstractUserResourceFuncTest { @@ -19,80 +17,95 @@ public abstract class AbstractUserResourceFuncTest { @Test public void testGetUser() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)).build(); - - ClientResponse clientResponse = usersResource.get(); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)).build(); - UserBean userBean = clientResponse.getEntity(UserBean.class); + final Response response = usersResource.get(); + final UserBean userBean = response.readEntity(UserBean.class); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); assertNotNull(userBean); } @Test public void testSetUserEmailAddress() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)).build(); - - ClientResponse clientResponse = usersResource.put(exampleBean); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); - - UserBean userBean = clientResponse.getEntity(UserBean.class); - assertEquals(exampleBean, userBean); + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)).build(); + + final int status; + final UserBean userBean; + try (final Response response = usersResource.put(Entity.entity(exampleBean, MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + userBean = response.readEntity(UserBean.class); + } + assertEquals(Response.Status.OK.getStatusCode(), status); + assertEquals(exampleBean.getEmail(), userBean.getEmail()); } @Test public void testSetUserPassword() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder .builder(ConfAPI.USERS + "/" + ConfAPI.USER_PASSWORD + getUserNameQueryParam(exampleBean)) .contentMediaType(MediaType.TEXT_PLAIN) .build(); - ClientResponse clientResponse = usersResource.put(exampleBean.getPassword()); - assertEquals(Response.Status.OK.getStatusCode(), clientResponse.getStatusCode()); + final int status; + try (final Response response = usersResource.put(Entity.text(exampleBean.getPassword()))) { + status = response.getStatus(); + } + assertEquals(Response.Status.OK.getStatusCode(), status); } - @Test(expected = ClientAuthenticationException.class) + @Test public void testGetUserUnauthenticated() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) .username("wrong") .password("password") .build(); - usersResource.get(); + + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), usersResource.get().getStatus()); } - @Test(expected = ClientAuthenticationException.class) + @Test public void testSetUserEmailAddressUnauthenticated() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) .username("wrong") .password("password") .build(); - usersResource.put(exampleBean); + + final int status; + try (final Response response = usersResource.put(Entity.entity(exampleBean, MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + } + assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), status); } @Test public void testGetUserUnauthorized() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) .username("user") .password("user") .build(); - usersResource.get(); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), usersResource.put(getExampleBean()).getStatusCode()); + + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), usersResource.get().getStatus()); } @Test public void testSetUserEmailAddressUnauthorized() { - UserBean exampleBean = getExampleBean(); - Resource usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) + final UserBean exampleBean = getExampleBean(); + final Invocation.Builder usersResource = ResourceBuilder.builder(ConfAPI.USERS + getUserNameQueryParam(exampleBean)) .username("user") .password("user") .build(); - usersResource.put(exampleBean); - assertEquals(Response.Status.FORBIDDEN.getStatusCode(), usersResource.put(getExampleBean()).getStatusCode()); + + final int status; + try (final Response response = usersResource.put(Entity.entity(exampleBean, MediaType.APPLICATION_JSON))) { + status = response.getStatus(); + } + assertEquals(Response.Status.FORBIDDEN.getStatusCode(), status); } protected String getUserNameQueryParam(UserBean userBean) { diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/ClientApplication.java b/src/test/java/it/de/aservo/confapi/commons/rest/ClientApplication.java index 8fedeb8..66d2a67 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/ClientApplication.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/ClientApplication.java @@ -1,6 +1,6 @@ package it.de.aservo.confapi.commons.rest; -import javax.ws.rs.core.Application; +import jakarta.ws.rs.core.Application; import java.util.Collections; import java.util.Set; diff --git a/src/test/java/it/de/aservo/confapi/commons/rest/ResourceBuilder.java b/src/test/java/it/de/aservo/confapi/commons/rest/ResourceBuilder.java index 1efa9c8..3e29d70 100644 --- a/src/test/java/it/de/aservo/confapi/commons/rest/ResourceBuilder.java +++ b/src/test/java/it/de/aservo/confapi/commons/rest/ResourceBuilder.java @@ -1,13 +1,11 @@ package it.de.aservo.confapi.commons.rest; -import org.apache.wink.client.ClientConfig; -import org.apache.wink.client.Resource; -import org.apache.wink.client.RestClient; -import org.apache.wink.client.handlers.BasicAuthSecurityHandler; -import org.codehaus.jackson.jaxrs.JacksonJsonProvider; - -import javax.ws.rs.core.MediaType; -import java.util.Collections; +import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.MediaType; public class ResourceBuilder { @@ -49,30 +47,44 @@ public ResourceBuilder contentMediaType(final String contentMediaType) { } /** - * Creates a new REST client for test purposes. Note that the client must be recreated like this for auth tests. - * (Atlassian uses cookies for authentication which may survive otherwise and lead to false test results regarding auth) + * Creates a new REST client for test purposes. * - * @return the built resource + * @return the built Invocation.Builder which can be used to make requests + */ + public Invocation.Builder build() { + // Create a new client with Jackson provider for JSON processing + WebTarget webTarget; + try (Client client = ClientBuilder.newClient().register(new JacksonJsonProvider())) { + + // Configure HTTP basic authentication + client.register(new BasicAuthenticator(username, password)); + + // Configure the target resource URL + String resourceUrl = baseUrl + REST_PATH + resourceName; + webTarget = client.target(resourceUrl); + } + + // Return the Invocation.Builder to configure and execute the request + return webTarget.request(acceptMediaType).accept(contentMediaType); + } + + /** + * BasicAuthenticator class to configure HTTP Basic Authentication. */ - public Resource build() { - - //create new client app with Jackson binding - final ClientApplication clientApplication = new ClientApplication(); - clientApplication.setSingletons(Collections.singleton(new JacksonJsonProvider())); - final ClientConfig config = new ClientConfig().applications(clientApplication); - - //setup http basic auth - final BasicAuthSecurityHandler basicAuthHandler = new BasicAuthSecurityHandler(); - basicAuthHandler.setUserName(username); - basicAuthHandler.setPassword(password); - config.handlers(basicAuthHandler); - RestClient restClient = new RestClient(config); - - //configure resource - String resourceUrl = baseUrl + REST_PATH + resourceName; - Resource resource = restClient.resource(resourceUrl); - resource.accept(acceptMediaType); - resource.contentType(contentMediaType); - return resource; + private static class BasicAuthenticator implements jakarta.ws.rs.client.ClientRequestFilter { + private final String username; + private final String password; + + public BasicAuthenticator(String username, String password) { + this.username = username; + this.password = password; + } + + @Override + public void filter(jakarta.ws.rs.client.ClientRequestContext requestContext) { + String token = username + ":" + password; + String base64Token = java.util.Base64.getEncoder().encodeToString(token.getBytes(java.nio.charset.StandardCharsets.UTF_8)); + requestContext.getHeaders().add("Authorization", "Basic " + base64Token); + } } }