From c31f82a69c1a91a4b1dc5765de3d9238a5b49fbb Mon Sep 17 00:00:00 2001 From: Marcel Date: Mon, 8 Jun 2026 20:50:17 +0200 Subject: [PATCH] fix(test): use nullValue() matcher instead of doesNotExist() for null note field MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit doesNotExist() asserts the key is absent from the JSON object, but Jackson serializes a null Optional as {"note": null} — the key is present with a null value. nullValue() correctly matches that case. Co-Authored-By: Claude Sonnet 4.6 --- .../familienarchiv/geschichte/GeschichteControllerTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/backend/src/test/java/org/raddatz/familienarchiv/geschichte/GeschichteControllerTest.java b/backend/src/test/java/org/raddatz/familienarchiv/geschichte/GeschichteControllerTest.java index df0d07d8..2aec2e4c 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/geschichte/GeschichteControllerTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/geschichte/GeschichteControllerTest.java @@ -24,6 +24,7 @@ import java.util.HashSet; import java.util.List; import java.util.UUID; +import static org.hamcrest.CoreMatchers.nullValue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; @@ -283,7 +284,7 @@ class GeschichteControllerTest { .contentType(MediaType.APPLICATION_JSON) .content("{\"note\": null}")) .andExpect(status().isOk()) - .andExpect(jsonPath("$.note").doesNotExist()); + .andExpect(jsonPath("$.note").value(nullValue())); } @Test