diff --git a/src/main/java/de/ozgcloud/admin/common/errorhandling/DynamicViolationParameter.java b/src/main/java/de/ozgcloud/admin/common/errorhandling/DynamicViolationParameter.java index 89f8e0ee9c80f9428237dfe2f71c12e4768e93e4..7efd10a1a615dfe4715ebaf608ee6655068b1673 100644 --- a/src/main/java/de/ozgcloud/admin/common/errorhandling/DynamicViolationParameter.java +++ b/src/main/java/de/ozgcloud/admin/common/errorhandling/DynamicViolationParameter.java @@ -1,26 +1,3 @@ -/* - * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ package de.ozgcloud.admin.common.errorhandling; import java.util.HashMap; diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionTestFactory.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/ConstraintViolationTestFactory.java similarity index 96% rename from src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionTestFactory.java rename to src/test/java/de/ozgcloud/admin/common/errorhandling/ConstraintViolationTestFactory.java index 7a4b0747605bdd5af1fa865b0037391afd0d5211..660e3e74e2ead731e6693d043a084360ea50495c 100644 --- a/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionTestFactory.java +++ b/src/test/java/de/ozgcloud/admin/common/errorhandling/ConstraintViolationTestFactory.java @@ -37,7 +37,7 @@ import org.hibernate.validator.engine.HibernateConstraintViolation; import com.thedeanda.lorem.LoremIpsum; -public class ExceptionTestFactory { +public class ConstraintViolationTestFactory { static final String EXCEPTION_ID = UUID.randomUUID().toString(); @@ -51,7 +51,7 @@ public class ExceptionTestFactory { public static final String PATH = PATH_PREFIX + "." + PATH_FIELD; public static ConstraintViolation<?> buildMockedConstraintViolation() { - return ExceptionTestFactory.buildMockedConstraintViolationWithDynamicPayload(null); + return buildMockedConstraintViolationWithDynamicPayload(null); } @SuppressWarnings({ "unchecked" }) diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java index 0d928338086d85e7dbbf687d71c04a953d17ed55..d263ff1a5c34b344e8528f768a019f29d27e0a9e 100644 --- a/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java +++ b/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java @@ -423,37 +423,33 @@ class ExceptionControllerTest { } @Nested - class TestContraintValidationException { + class TestHandleConstraintViolationException { + private final String exceptionMessage = LoremIpsum.getInstance().getWords(5); - @Nested - class TestHandleConstraintViolationException { - private final String exceptionMessage = LoremIpsum.getInstance().getWords(5); - - private final ConstraintViolationException exception = new ConstraintViolationException(exceptionMessage, - Collections.singleton(ExceptionTestFactory.buildMockedConstraintViolation())); - - @Test - void shouldBuildConstraintViolationProblemDetail() { - handleException(); + private final ConstraintViolationException exception = new ConstraintViolationException(exceptionMessage, + Collections.singleton(ConstraintViolationTestFactory.buildMockedConstraintViolation())); - verify(problemDetailMapper).fromConstraintViolationException(exception); - } + @Test + void shouldBuildConstraintViolationProblemDetail() { + handleException(); - @Test - void shouldReturnBuiltProblemDetail() { - var expectedProblemDetail = ProblemDetail.forStatusAndDetail(HttpStatus.UNPROCESSABLE_ENTITY, exceptionMessage); - when(problemDetailMapper.fromConstraintViolationException(exception)).thenReturn(expectedProblemDetail); + verify(problemDetailMapper).fromConstraintViolationException(exception); + } - var problemDetail = handleException(); + @Test + void shouldReturnBuiltProblemDetail() { + var expectedProblemDetail = ProblemDetail.forStatusAndDetail(HttpStatus.UNPROCESSABLE_ENTITY, + exceptionMessage); + when(problemDetailMapper.fromConstraintViolationException(exception)).thenReturn(expectedProblemDetail); - assertThat(problemDetail).isEqualTo(expectedProblemDetail); - } + var problemDetail = handleException(); - private ProblemDetail handleException() { - return exceptionController.handleConstraintViolationException(exception); - } + assertThat(problemDetail).isEqualTo(expectedProblemDetail); } + private ProblemDetail handleException() { + return exceptionController.handleConstraintViolationException(exception); + } } @SneakyThrows diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/IssueParamTestFactory.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/IssueParamTestFactory.java index 405befc2909899e53040793aa3cfd5a739e7bdf8..42a063990bb25f5c993f087179e7e00294d486fd 100644 --- a/src/test/java/de/ozgcloud/admin/common/errorhandling/IssueParamTestFactory.java +++ b/src/test/java/de/ozgcloud/admin/common/errorhandling/IssueParamTestFactory.java @@ -3,8 +3,8 @@ package de.ozgcloud.admin.common.errorhandling; import de.ozgcloud.admin.common.errorhandling.IssueParam.IssueParamBuilder; public class IssueParamTestFactory { - public static final String PARAM_NAME = ExceptionTestFactory.PARAM_NAME; - public static final String PARAM_DYNAMIC_VALUE = ExceptionTestFactory.PARAM_DYNAMIC_VALUE; + public static final String PARAM_NAME = ConstraintViolationTestFactory.PARAM_NAME; + public static final String PARAM_DYNAMIC_VALUE = ConstraintViolationTestFactory.PARAM_DYNAMIC_VALUE; public static IssueParam create() { return createBuilder() diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/ProblemDetailMapperTest.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/ProblemDetailMapperTest.java index 651b583b6fd8831e6a94db2f23a286d0849f57cf..da2d73946bcafb2bcf1223096ac3208cf5a927ce 100644 --- a/src/test/java/de/ozgcloud/admin/common/errorhandling/ProblemDetailMapperTest.java +++ b/src/test/java/de/ozgcloud/admin/common/errorhandling/ProblemDetailMapperTest.java @@ -37,7 +37,7 @@ class ProblemDetailMapperTest { @Nested class TestFromConstraintViolationException { private final String exceptionMessage = LoremIpsum.getInstance().getWords(5); - private final Set<ConstraintViolation<?>> violations = Collections.singleton(ExceptionTestFactory.buildMockedConstraintViolation()); + private final Set<ConstraintViolation<?>> violations = Collections.singleton(ConstraintViolationTestFactory.buildMockedConstraintViolation()); private final ConstraintViolationException exception = new ConstraintViolationException(exceptionMessage, violations); private final String message = LoremIpsum.getInstance().getWords(5); @@ -126,8 +126,8 @@ class ProblemDetailMapperTest { @Nested class OnViolations { - private final Set<ConstraintViolation<?>> violations = Set.of(ExceptionTestFactory.buildMockedConstraintViolation(), - ExceptionTestFactory.buildMockedConstraintViolation()); + private final Set<ConstraintViolation<?>> violations = Set.of(ConstraintViolationTestFactory.buildMockedConstraintViolation(), + ConstraintViolationTestFactory.buildMockedConstraintViolation()); @Test void shouldCallBuildDetailedViolation() { @@ -177,11 +177,11 @@ class ProblemDetailMapperTest { @Nested class TestBuildDetailedViolation { - private final ConstraintViolation<?> violation = ExceptionTestFactory.buildMockedConstraintViolation(); + private final ConstraintViolation<?> violation = ConstraintViolationTestFactory.buildMockedConstraintViolation(); @Test void shouldContainFieldName() { - var expectedEntry = new SimpleEntry<>(ProblemDetailMapper.INVALID_PARAMS_KEY_NAME, ExceptionTestFactory.PATH); + var expectedEntry = new SimpleEntry<>(ProblemDetailMapper.INVALID_PARAMS_KEY_NAME, ConstraintViolationTestFactory.PATH); var detailedViolation = callMapper(); @@ -190,7 +190,7 @@ class ProblemDetailMapperTest { @Test void shouldContainValue() { - var expectedEntry = new SimpleEntry<>(ProblemDetailMapper.INVALID_PARAMS_KEY_VALUE, ExceptionTestFactory.PARAM_VALUE); + var expectedEntry = new SimpleEntry<>(ProblemDetailMapper.INVALID_PARAMS_KEY_VALUE, ConstraintViolationTestFactory.PARAM_VALUE); var detailedViolation = callMapper(); @@ -210,7 +210,7 @@ class ProblemDetailMapperTest { @Test void shouldContainReason() { - var expectedEntry = new SimpleEntry<>(ProblemDetailMapper.INVALID_PARAMS_KEY_REASON, ExceptionTestFactory.MESSAGE); + var expectedEntry = new SimpleEntry<>(ProblemDetailMapper.INVALID_PARAMS_KEY_REASON, ConstraintViolationTestFactory.MESSAGE); var detailedViolation = callMapper(); @@ -261,7 +261,7 @@ class ProblemDetailMapperTest { when(violation.getConstraintDescriptor()).thenReturn(constraintDescriptor); when(violation.unwrap(HibernateConstraintViolation.class)).thenReturn(hibernateConstraintViolation); when(constraintDescriptor.getAttributes()) - .thenReturn(Map.of(ExceptionTestFactory.PARAM_NAME, ExceptionTestFactory.PARAM_DYNAMIC_VALUE)); + .thenReturn(Map.of(ConstraintViolationTestFactory.PARAM_NAME, ConstraintViolationTestFactory.PARAM_DYNAMIC_VALUE)); } @Nested @@ -284,7 +284,7 @@ class ProblemDetailMapperTest { void shouldHaveReplacedIssueParameterName() { var dynamicValue = LoremIpsum.getInstance().getWords(1); var dynamicViolationParameter = DynamicViolationParameter.builder() - .map(Map.of(ExceptionTestFactory.PARAM_NAME, dynamicValue)) + .map(Map.of(ConstraintViolationTestFactory.PARAM_NAME, dynamicValue)) .build(); when(hibernateConstraintViolation.getDynamicPayload(DynamicViolationParameter.class)).thenReturn(dynamicViolationParameter); var expectedIssueParam = IssueParamTestFactory.createBuilder().value(dynamicValue).build();