From bfc3a17676ab223232cab8d31bbc3abc7a853dbe Mon Sep 17 00:00:00 2001 From: Marcel Date: Sat, 9 May 2026 15:25:26 +0200 Subject: [PATCH] test(migration): guard cleanup in try-finally to ensure isolation Co-Authored-By: Claude Sonnet 4.6 --- .../familienarchiv/MigrationIntegrationTest.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/backend/src/test/java/org/raddatz/familienarchiv/MigrationIntegrationTest.java b/backend/src/test/java/org/raddatz/familienarchiv/MigrationIntegrationTest.java index cf576dee..a01682ab 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/MigrationIntegrationTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/MigrationIntegrationTest.java @@ -433,14 +433,16 @@ class MigrationIntegrationTest { @Transactional(propagation = Propagation.NOT_SUPPORTED) void v64_rejectsDuplicateGroupPermission() { UUID groupId = createUserGroup("DuplicateTestGroup-" + UUID.randomUUID()); - jdbc.update("INSERT INTO group_permissions (group_id, permission) VALUES (?, 'READ_ALL')", groupId); + try { + jdbc.update("INSERT INTO group_permissions (group_id, permission) VALUES (?, 'READ_ALL')", groupId); - assertThatThrownBy(() -> - jdbc.update("INSERT INTO group_permissions (group_id, permission) VALUES (?, 'READ_ALL')", groupId) - ).isInstanceOf(DataIntegrityViolationException.class); - - jdbc.update("DELETE FROM group_permissions WHERE group_id = ?", groupId); - jdbc.update("DELETE FROM user_groups WHERE id = ?", groupId); + assertThatThrownBy(() -> + jdbc.update("INSERT INTO group_permissions (group_id, permission) VALUES (?, 'READ_ALL')", groupId) + ).isInstanceOf(DataIntegrityViolationException.class); + } finally { + jdbc.update("DELETE FROM group_permissions WHERE group_id = ?", groupId); + jdbc.update("DELETE FROM user_groups WHERE id = ?", groupId); + } } // ─── V65: tbmp UNIQUE promoted to PRIMARY KEY ─────────────────────────────