From 65d606d8bb0c13475e815051e58d2b8d181eb43f Mon Sep 17 00:00:00 2001 From: Marcel Date: Tue, 14 Apr 2026 14:31:07 +0200 Subject: [PATCH] test(annotations): add missing height and x boundary validation tests [M4] Co-Authored-By: Claude Sonnet 4.6 --- .../controller/AnnotationControllerTest.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/backend/src/test/java/org/raddatz/familienarchiv/controller/AnnotationControllerTest.java b/backend/src/test/java/org/raddatz/familienarchiv/controller/AnnotationControllerTest.java index 0da8d073..317cb4fa 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/controller/AnnotationControllerTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/controller/AnnotationControllerTest.java @@ -246,6 +246,24 @@ class AnnotationControllerTest { .andExpect(status().isBadRequest()); } + @Test + @WithMockUser(authorities = "WRITE_ALL") + void patchAnnotation_returns400_withHeightBelowMinimum() throws Exception { + mockMvc.perform(patch("/api/documents/" + UUID.randomUUID() + "/annotations/" + UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON) + .content("{\"height\":0.005}")) + .andExpect(status().isBadRequest()); + } + + @Test + @WithMockUser(authorities = "WRITE_ALL") + void patchAnnotation_returns400_withXAboveMaximum() throws Exception { + mockMvc.perform(patch("/api/documents/" + UUID.randomUUID() + "/annotations/" + UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON) + .content("{\"x\":1.1}")) + .andExpect(status().isBadRequest()); + } + // ─── resolveUserId — unauthenticated / null user / exception branches ───── @Test