diff --git a/src/main/resources/db/migration/V5__Remove_Seeded_Test_User.sql b/src/main/resources/db/migration/V5__Remove_Seeded_Test_User.sql new file mode 100644 index 0000000..d27d21d --- /dev/null +++ b/src/main/resources/db/migration/V5__Remove_Seeded_Test_User.sql @@ -0,0 +1,5 @@ +-- V1 seeded test@example.com with the password 'password123' into every environment. +-- The hash check makes sure only that seed row goes; user_settings follows via ON DELETE CASCADE. +DELETE FROM users +WHERE email = 'test@example.com' + AND password = '$2a$10$3FApyf15qVEvFLEvl/d7aecSMZlslQdXiYlDgbOa4DfGWu4l0VCY.'; diff --git a/src/test/java/auth_service/modules/user/persistence/UserRepositoryTest.java b/src/test/java/auth_service/modules/user/persistence/UserRepositoryTest.java index f5c68da..9c3e1ba 100644 --- a/src/test/java/auth_service/modules/user/persistence/UserRepositoryTest.java +++ b/src/test/java/auth_service/modules/user/persistence/UserRepositoryTest.java @@ -145,4 +145,10 @@ class UserRepositoryTest extends AbstractPersistenceTest { assertThrows(UserNotFoundException.class, () -> userRepository.updateSettings(-1L, null, settings)); } + + @Test + void migrations_LeaveNoSeededTestUser() { + // V1 seeded test@example.com with a known password; it must not exist after all migrations. + assertTrue(userRepository.findByEmail("test@example.com").isEmpty()); + } }