From 5b3fb8fb3fd7e172bf6231dedcd028ee5cadc35f Mon Sep 17 00:00:00 2001 From: Marcel Date: Mon, 20 Apr 2026 22:04:08 +0200 Subject: [PATCH] refactor(test): use ObjectMapper for payload JSON in audit test helper Co-Authored-By: Claude Sonnet 4.6 --- .../AuditLogQueryRepositoryRolledUpTest.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/backend/src/test/java/org/raddatz/familienarchiv/dashboard/AuditLogQueryRepositoryRolledUpTest.java b/backend/src/test/java/org/raddatz/familienarchiv/dashboard/AuditLogQueryRepositoryRolledUpTest.java index d7197b4c..c5ebc934 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/dashboard/AuditLogQueryRepositoryRolledUpTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/dashboard/AuditLogQueryRepositoryRolledUpTest.java @@ -14,6 +14,9 @@ import org.springframework.jdbc.core.namedparam.MapSqlParameterSource; import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; import org.springframework.transaction.annotation.Transactional; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; + import java.time.Instant; import java.time.OffsetDateTime; import java.util.List; @@ -33,6 +36,8 @@ class AuditLogQueryRepositoryRolledUpTest { static final UUID DOC_ID = UUID.fromString("eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee"); static final UUID OTHER_DOC_ID = UUID.fromString("ffffffff-ffff-ffff-ffff-ffffffffffff"); + private static final ObjectMapper MAPPER = new ObjectMapper(); + @Autowired AuditLogQueryRepository auditLogQueryRepository; @Autowired JdbcTemplate jdbcTemplate; @@ -60,10 +65,12 @@ class AuditLogQueryRepositoryRolledUpTest { } private void insertAuditEvent(UUID actorId, UUID docId, String kind, Instant happenedAt, Map payload) { - String payloadJson = payload.isEmpty() ? null - : payload.entrySet().stream() - .map(e -> "\"" + e.getKey() + "\": \"" + e.getValue() + "\"") - .collect(java.util.stream.Collectors.joining(", ", "{", "}")); + String payloadJson; + try { + payloadJson = payload.isEmpty() ? null : MAPPER.writeValueAsString(payload); + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } MapSqlParameterSource params = new MapSqlParameterSource() .addValue("kind", kind) .addValue("actor", actorId)