From d84fc6aeaa382c0319f3271c69bdedd9b3c67603 Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Fri, 23 Feb 2024 09:36:33 +0100
Subject: [PATCH] OZG-4717 ExceptionController refactoring

---
 ...ptionHandler.java => ExceptionController.java} |  2 +-
 ...ITCase.java => ExceptionControllerITCase.java} | 14 ++++++++++++--
 ...dlerTest.java => ExceptionControllerTest.java} |  6 +++---
 .../common/errorhandling/ValidatedClass.java      | 15 ---------------
 4 files changed, 16 insertions(+), 21 deletions(-)
 rename src/main/java/de/ozgcloud/admin/common/errorhandling/{AdminExceptionHandler.java => ExceptionController.java} (97%)
 rename src/test/java/de/ozgcloud/admin/common/errorhandling/{AdminExceptionHandlerITCase.java => ExceptionControllerITCase.java} (89%)
 rename src/test/java/de/ozgcloud/admin/common/errorhandling/{AdminExceptionHandlerTest.java => ExceptionControllerTest.java} (96%)
 delete mode 100644 src/test/java/de/ozgcloud/admin/common/errorhandling/ValidatedClass.java

diff --git a/src/main/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandler.java b/src/main/java/de/ozgcloud/admin/common/errorhandling/ExceptionController.java
similarity index 97%
rename from src/main/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandler.java
rename to src/main/java/de/ozgcloud/admin/common/errorhandling/ExceptionController.java
index 6ac8e756..75a3dda5 100644
--- a/src/main/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandler.java
+++ b/src/main/java/de/ozgcloud/admin/common/errorhandling/ExceptionController.java
@@ -36,7 +36,7 @@ import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExcep
 import de.ozgcloud.common.errorhandling.TechnicalException;
 
 @RestControllerAdvice
-public class AdminExceptionHandler extends ResponseEntityExceptionHandler {
+public class ExceptionController extends ResponseEntityExceptionHandler {
 
 	static final Map<Class<? extends Exception>, HttpStatus> STATUS_BY_EXCEPTION = Map.of(
 			RuntimeException.class, HttpStatus.INTERNAL_SERVER_ERROR,
diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandlerITCase.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerITCase.java
similarity index 89%
rename from src/test/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandlerITCase.java
rename to src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerITCase.java
index 6b8a2689..2cdd01ec 100644
--- a/src/test/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandlerITCase.java
+++ b/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerITCase.java
@@ -13,6 +13,7 @@ import jakarta.validation.ConstraintViolation;
 import jakarta.validation.ConstraintViolationException;
 import jakarta.validation.Validation;
 import jakarta.validation.Validator;
+import jakarta.validation.constraints.NotEmpty;
 
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
@@ -30,12 +31,14 @@ import org.springframework.test.web.servlet.ResultActions;
 import de.ozgcloud.admin.RootController;
 import de.ozgcloud.admin.RootModelAssembler;
 import de.ozgcloud.common.test.ITCase;
+import lombok.Builder;
+import lombok.Getter;
 import lombok.SneakyThrows;
 
 @ITCase
 @AutoConfigureMockMvc
 @WithMockUser
-public class AdminExceptionHandlerITCase {
+public class ExceptionControllerITCase {
 
 	@Autowired
 	private MockMvc mockMvc;
@@ -68,7 +71,7 @@ public class AdminExceptionHandlerITCase {
 		}
 
 		private static Stream<Arguments> exceptionAndExpectedStatus() {
-			return AdminExceptionHandler.STATUS_BY_EXCEPTION.entrySet().stream().map(kv -> Arguments.of(kv.getKey(), kv.getValue()));
+			return ExceptionController.STATUS_BY_EXCEPTION.entrySet().stream().map(kv -> Arguments.of(kv.getKey(), kv.getValue()));
 		}
 
 	}
@@ -93,6 +96,13 @@ public class AdminExceptionHandlerITCase {
 			return validator.validate(object);
 		}
 
+		@Getter
+		@Builder
+		private static class ValidatedClass {
+			@NotEmpty(message = "Empty field")
+			private String string;
+		}
+
 	}
 
 	@SneakyThrows
diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandlerTest.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java
similarity index 96%
rename from src/test/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandlerTest.java
rename to src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java
index 00d555b4..f33a3715 100644
--- a/src/test/java/de/ozgcloud/admin/common/errorhandling/AdminExceptionHandlerTest.java
+++ b/src/test/java/de/ozgcloud/admin/common/errorhandling/ExceptionControllerTest.java
@@ -21,7 +21,7 @@
  */
 package de.ozgcloud.admin.common.errorhandling;
 
-import static de.ozgcloud.admin.common.errorhandling.AdminExceptionHandler.*;
+import static de.ozgcloud.admin.common.errorhandling.ExceptionController.*;
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
 
@@ -41,7 +41,7 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders;
 
 import lombok.SneakyThrows;
 
-class AdminExceptionHandlerTest {
+class ExceptionControllerTest {
 
 	private MockMvc mockMvc;
 
@@ -49,7 +49,7 @@ class AdminExceptionHandlerTest {
 	void setup() {
 		mockMvc = MockMvcBuilders
 				.standaloneSetup(new TestErrorController())
-				.setControllerAdvice(new AdminExceptionHandler()).build();
+				.setControllerAdvice(new ExceptionController()).build();
 	}
 
 	@DisplayName("Error handler")
diff --git a/src/test/java/de/ozgcloud/admin/common/errorhandling/ValidatedClass.java b/src/test/java/de/ozgcloud/admin/common/errorhandling/ValidatedClass.java
deleted file mode 100644
index 7262bf80..00000000
--- a/src/test/java/de/ozgcloud/admin/common/errorhandling/ValidatedClass.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package de.ozgcloud.admin.common.errorhandling;
-
-import jakarta.validation.constraints.NotEmpty;
-
-import lombok.Builder;
-import lombok.Getter;
-import lombok.extern.jackson.Jacksonized;
-
-@Getter
-@Builder
-@Jacksonized
-public class ValidatedClass {
-	@NotEmpty(message = "Empty field")
-	private String string;
-}
-- 
GitLab