From 777dc1c5efd6098fc8d626bdf64f92f60b88581c Mon Sep 17 00:00:00 2001 From: gitjiho Date: Tue, 9 Sep 2025 19:26:02 +0900 Subject: [PATCH 1/2] =?UTF-8?q?Fix:=20email=EC=9D=B4=20null=EC=9D=BC=20?= =?UTF-8?q?=EA=B2=BD=EC=9A=B0=20email=20=EC=88=98=EC=A0=95=EC=95=88?= =?UTF-8?q?=ED=95=98=EB=8F=84=EB=A1=9D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/newzet/api/userinfo/domain/Userinfo.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/com/newzet/api/userinfo/domain/Userinfo.java b/src/main/java/com/newzet/api/userinfo/domain/Userinfo.java index f451f29d..7eea9583 100644 --- a/src/main/java/com/newzet/api/userinfo/domain/Userinfo.java +++ b/src/main/java/com/newzet/api/userinfo/domain/Userinfo.java @@ -17,6 +17,9 @@ public class Userinfo { private LocalDateTime deletedAt; public void changeEmail(String email) { + if (email == null) { + return; + } this.email = email.trim(); } From c80583234b00cd7dbf4421e467602aef6698b94d Mon Sep 17 00:00:00 2001 From: gitjiho Date: Tue, 9 Sep 2025 19:46:19 +0900 Subject: [PATCH 2/2] =?UTF-8?q?Test:=20=EB=8F=84=EB=A9=94=EC=9D=B8=20?= =?UTF-8?q?=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/userinfo/domain/UserinfoTest.java | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 src/test/java/com/newzet/api/userinfo/domain/UserinfoTest.java diff --git a/src/test/java/com/newzet/api/userinfo/domain/UserinfoTest.java b/src/test/java/com/newzet/api/userinfo/domain/UserinfoTest.java new file mode 100644 index 00000000..11477c72 --- /dev/null +++ b/src/test/java/com/newzet/api/userinfo/domain/UserinfoTest.java @@ -0,0 +1,80 @@ +package com.newzet.api.userinfo.domain; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.BeforeEach; +import static org.assertj.core.api.Assertions.*; +import java.util.UUID; +import java.time.LocalDateTime; + +class UserinfoTest { + + private Userinfo userinfo; + private UUID userId; + + @BeforeEach + void setUp() { + userId = UUID.randomUUID(); + userinfo = new Userinfo( + userId, + "test@example.com", + "testNickname", + UserRole.MEMBER, + LocalDateTime.now(), + null + ); + } + + @Test + @DisplayName("이메일 변경 - 정상 케이스") + void changeEmail_withValidEmail() { + // given + String newEmail = " new@example.com "; + + // when + userinfo.changeEmail(newEmail); + + // then + assertThat(userinfo.getEmail()).isEqualTo("new@example.com"); + } + + @Test + @DisplayName("이메일 변경 - null인 경우") + void changeEmail_withNull() { + // given + String originalEmail = userinfo.getEmail(); + + // when + userinfo.changeEmail(null); + + // then + assertThat(userinfo.getEmail()).isEqualTo(originalEmail); + } + + @Test + @DisplayName("닉네임 변경 테스트") + void changeNickname() { + // given + String newNickname = " newNickname "; + + // when + userinfo.changeNickname(newNickname); + + // then + assertThat(userinfo.getNickname()).isEqualTo("newNickname"); + } + + @Test + @DisplayName("사용자 삭제 테스트") + void delete() { + // given + assertThat(userinfo.getDeletedAt()).isNull(); + + // when + userinfo.delete(); + + // then + assertThat(userinfo.getDeletedAt()).isNotNull(); + assertThat(userinfo.getDeletedAt()).isBeforeOrEqualTo(LocalDateTime.now()); + } +}