From 2f981ef69dffff3bc13debf42ac93898f0ce1662 Mon Sep 17 00:00:00 2001 From: Marcel Date: Mon, 18 May 2026 22:25:06 +0200 Subject: [PATCH] refactor(test): use static imports for verify/assertThat in controller and rate-limiter tests UserControllerTest: replaces fully-qualified org.mockito.Mockito.verify() and ArgumentMatchers.eq() with the static imports already present in the file. LoginRateLimiterTest: replaces three org.assertj.core.api.Assertions.assertThat() calls with the static-import form; adds missing assertThat import. Addresses Felix Suggestions 2 and 4 from PR #617 review. Co-Authored-By: Claude Sonnet 4.6 --- .../familienarchiv/auth/LoginRateLimiterTest.java | 9 +++++---- .../raddatz/familienarchiv/user/UserControllerTest.java | 4 +++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/backend/src/test/java/org/raddatz/familienarchiv/auth/LoginRateLimiterTest.java b/backend/src/test/java/org/raddatz/familienarchiv/auth/LoginRateLimiterTest.java index 05bea409..4872ecc8 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/auth/LoginRateLimiterTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/auth/LoginRateLimiterTest.java @@ -5,8 +5,9 @@ import org.junit.jupiter.api.Test; import org.raddatz.familienarchiv.exception.DomainException; import org.raddatz.familienarchiv.exception.ErrorCode; -import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatNoException; +import static org.assertj.core.api.Assertions.assertThatThrownBy; class LoginRateLimiterTest { @@ -37,7 +38,7 @@ class LoginRateLimiterTest { assertThatThrownBy(() -> rateLimiter.checkAndConsume("1.2.3.4", "user@example.com")) .isInstanceOf(DomainException.class) - .satisfies(ex -> org.assertj.core.api.Assertions.assertThat(((DomainException) ex).getCode()) + .satisfies(ex -> assertThat(((DomainException) ex).getCode()) .isEqualTo(ErrorCode.TOO_MANY_LOGIN_ATTEMPTS)); } @@ -61,7 +62,7 @@ class LoginRateLimiterTest { assertThatThrownBy(() -> rateLimiter.checkAndConsume("1.2.3.4", "attacker@example.com")) .isInstanceOf(DomainException.class) - .satisfies(ex -> org.assertj.core.api.Assertions.assertThat(((DomainException) ex).getCode()) + .satisfies(ex -> assertThat(((DomainException) ex).getCode()) .isEqualTo(ErrorCode.TOO_MANY_LOGIN_ATTEMPTS)); } @@ -86,7 +87,7 @@ class LoginRateLimiterTest { assertThatThrownBy(() -> rateLimiter.checkAndConsume("1.2.3.4", "user@example.com")) .isInstanceOf(DomainException.class) - .satisfies(ex -> org.assertj.core.api.Assertions.assertThat(((DomainException) ex).getCode()) + .satisfies(ex -> assertThat(((DomainException) ex).getCode()) .isEqualTo(ErrorCode.TOO_MANY_LOGIN_ATTEMPTS)); } diff --git a/backend/src/test/java/org/raddatz/familienarchiv/user/UserControllerTest.java b/backend/src/test/java/org/raddatz/familienarchiv/user/UserControllerTest.java index 1adb2cc5..a31fa4af 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/user/UserControllerTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/user/UserControllerTest.java @@ -20,6 +20,8 @@ import org.springframework.test.web.servlet.MockMvc; import java.util.UUID; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; @@ -178,7 +180,7 @@ class UserControllerTest { .content("{\"currentPassword\":\"old\",\"newPassword\":\"new123!\"}")) .andExpect(status().isNoContent()); - org.mockito.Mockito.verify(authService).revokeOtherSessions(any(), org.mockito.ArgumentMatchers.eq("user@example.com")); + verify(authService).revokeOtherSessions(any(), eq("user@example.com")); } @Test