From 25482169d1dfe20908e7f4ba78249d7e19fae850 Mon Sep 17 00:00:00 2001 From: min0962 Date: Thu, 31 Jul 2025 15:16:03 +0900 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20=EC=B0=B8=EC=97=AC=ED=95=9C=20?= =?UTF-8?q?=EB=B0=9C=ED=91=9C=EB=B0=A9=20=EC=A1=B0=ED=9A=8C=20=EC=8B=9C=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1=EC=9D=BC,=20=EC=B0=B8=EC=97=AC=EC=9D=BC?= =?UTF-8?q?=EC=9D=B4=20=EB=82=98=EC=98=A4=EA=B2=8C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../join/member/util/MyPageMapper.java | 39 ++++++++++++------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/oronaminc/join/member/util/MyPageMapper.java b/src/main/java/com/oronaminc/join/member/util/MyPageMapper.java index ccdb1eb..bf1c3dd 100644 --- a/src/main/java/com/oronaminc/join/member/util/MyPageMapper.java +++ b/src/main/java/com/oronaminc/join/member/util/MyPageMapper.java @@ -4,35 +4,44 @@ import com.oronaminc.join.member.dto.MyRoomsGetResponse; import com.oronaminc.join.member.dto.ParticipationType; import com.oronaminc.join.participant.domain.Participant; +import com.oronaminc.join.participant.domain.ParticipantType; import com.oronaminc.join.room.domain.Room; -import java.util.Map; import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.springframework.data.domain.Page; +import java.time.LocalDate; +import java.util.Map; + @NoArgsConstructor(access = AccessLevel.PRIVATE) public class MyPageMapper { public static MyRoomsGetResponse toMyRoomsGetResponse(Page response) { return MyRoomsGetResponse.builder() - .content(response.getContent()) - .currentPage(response.getNumber()) - .size(response.getSize()) - .totalElements(response.getTotalElements()) - .totalPages(response.getTotalPages()) - .build(); + .content(response.getContent()) + .currentPage(response.getNumber()) + .size(response.getSize()) + .totalElements(response.getTotalElements()) + .totalPages(response.getTotalPages()) + .build(); } public static MyRoomsDto toMyRoomsDto(Participant p, Map countMap) { Room room = p.getRoom(); + LocalDate date; + if (p.getParticipantType() == ParticipantType.PRESENTER) { + date = room.getCreatedAt().toLocalDate(); + } else { + date = p.getCreatedAt().toLocalDate(); + } return MyRoomsDto.builder() - .roomId(room.getId()) - .title(room.getTitle()) - .emojiCount(room.getEmojiCount()) - .status(room.getRoomStatus()) - .startedAt(room.getCreatedAt().toLocalDate()) - .participationType(ParticipationType.from(p.getParticipantType())) - .questions(countMap.getOrDefault(room.getId(), 0L)) - .build(); + .roomId(room.getId()) + .title(room.getTitle()) + .emojiCount(room.getEmojiCount()) + .status(room.getRoomStatus()) + .startedAt(date) + .participationType(ParticipationType.from(p.getParticipantType())) + .questions(countMap.getOrDefault(room.getId(), 0L)) + .build(); } } From 0c838f03abd3965c736d9b9f897d35e42bb68b23 Mon Sep 17 00:00:00 2001 From: min0962 Date: Thu, 31 Jul 2025 15:24:49 +0900 Subject: [PATCH 2/2] =?UTF-8?q?test:=20=EB=B3=80=EA=B2=BD=EC=97=90=20?= =?UTF-8?q?=EB=94=B0=EB=A5=B8=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EC=BD=94?= =?UTF-8?q?=EB=93=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/service/MyPageServiceTests.java | 80 +++++++++---------- 1 file changed, 38 insertions(+), 42 deletions(-) diff --git a/src/test/java/com/oronaminc/join/member/service/MyPageServiceTests.java b/src/test/java/com/oronaminc/join/member/service/MyPageServiceTests.java index 7e14314..8e65792 100644 --- a/src/test/java/com/oronaminc/join/member/service/MyPageServiceTests.java +++ b/src/test/java/com/oronaminc/join/member/service/MyPageServiceTests.java @@ -1,11 +1,12 @@ package com.oronaminc.join.member.service; -import static org.assertj.core.api.Assertions.*; -import static org.mockito.Mockito.*; - -import java.time.LocalDateTime; -import java.util.List; - +import com.oronaminc.join.member.domain.Member; +import com.oronaminc.join.member.dto.*; +import com.oronaminc.join.participant.domain.Participant; +import com.oronaminc.join.participant.domain.ParticipantType; +import com.oronaminc.join.participant.service.ParticipantReader; +import com.oronaminc.join.question.service.QuestionReader; +import com.oronaminc.join.room.domain.Room; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -18,18 +19,11 @@ import org.springframework.data.domain.Pageable; import org.springframework.test.util.ReflectionTestUtils; -import com.oronaminc.join.member.domain.Member; -import com.oronaminc.join.member.dto.MyPageType; -import com.oronaminc.join.member.dto.MyProfileGetResponse; -import com.oronaminc.join.member.dto.MyProfileUpdateRequest; -import com.oronaminc.join.member.dto.MyRoomsGetResponse; -import com.oronaminc.join.member.dto.ParticipantCountDto; -import com.oronaminc.join.member.dto.ParticipationType; -import com.oronaminc.join.participant.domain.Participant; -import com.oronaminc.join.participant.domain.ParticipantType; -import com.oronaminc.join.participant.service.ParticipantReader; -import com.oronaminc.join.question.service.QuestionReader; -import com.oronaminc.join.room.domain.Room; +import java.time.LocalDateTime; +import java.util.List; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.when; @ExtendWith(MockitoExtension.class) class MyPageServiceTests { @@ -54,14 +48,14 @@ void getMyProfile_success_test() { Member member = Member.builder().build(); List pc = List.of( - new ParticipantCountDto(ParticipantType.PRESENTER, 1L), - new ParticipantCountDto(ParticipantType.TEAM, 1L), - new ParticipantCountDto(ParticipantType.GUEST, 1L) + new ParticipantCountDto(ParticipantType.PRESENTER, 1L), + new ParticipantCountDto(ParticipantType.TEAM, 1L), + new ParticipantCountDto(ParticipantType.GUEST, 1L) ); when(memberReader.getById(member.getId())).thenReturn(member); when(participantReader.countByMemberIdGroupByParticipantType(member.getId())) - .thenReturn(pc); + .thenReturn(pc); // when MyProfileGetResponse myProfile = myPageService.getMyProfile(member.getId()); @@ -84,7 +78,7 @@ void getMyProfile_success_test2() { when(memberReader.getById(member.getId())).thenReturn(member); when(participantReader.countByMemberIdGroupByParticipantType(member.getId())) - .thenReturn(pc); + .thenReturn(pc); // when MyProfileGetResponse myProfile = myPageService.getMyProfile(member.getId()); @@ -127,8 +121,8 @@ void getMyRooms_success_test() { Pageable pageable = PageRequest.of(0, 10); Room room1 = Room.builder() - .title("~1~의 정석") - .build(); + .title("~1~의 정석") + .build(); Room room2 = Room.builder().title("~2~의 정석").build(); Room room3 = Room.builder().title("~3~의 정석").build(); ReflectionTestUtils.setField(room1, "id", 100L); @@ -139,33 +133,35 @@ void getMyRooms_success_test() { ReflectionTestUtils.setField(room3, "createdAt", LocalDateTime.now()); Participant participant1 = Participant.builder() - .room(room1) - .member(member) - .participantType(ParticipantType.PRESENTER) - .build(); + .room(room1) + .member(member) + .participantType(ParticipantType.PRESENTER) + .build(); Participant participant2 = Participant.builder() - .room(room2) - .member(member) - .participantType(ParticipantType.TEAM) - .build(); + .room(room2) + .member(member) + .participantType(ParticipantType.TEAM) + .build(); Participant participant3 = Participant.builder() - .room(room3) - .member(member) - .participantType(ParticipantType.GUEST) - .build(); + .room(room3) + .member(member) + .participantType(ParticipantType.GUEST) + .build(); + ReflectionTestUtils.setField(participant2, "createdAt", LocalDateTime.now()); + ReflectionTestUtils.setField(participant3, "createdAt", LocalDateTime.now()); List pc = List.of(participant1, participant2, participant3); Page participantPage = new PageImpl<>(pc, pageable, 1); List roomIds = List.of(room1.getId(), room2.getId(), room3.getId()); List questions = List.of( - new Object[]{room1.getId(), 1L}, - new Object[]{room2.getId(), 2L}, - new Object[]{room3.getId(), 3L} + new Object[]{room1.getId(), 1L}, + new Object[]{room2.getId(), 2L}, + new Object[]{room3.getId(), 3L} ); when(participantReader.findByMemberId(memberId, pageable)) - .thenReturn(participantPage); + .thenReturn(participantPage); when(questionReader.countByRoomIds(roomIds)).thenReturn(questions); // when @@ -176,7 +172,7 @@ void getMyRooms_success_test() { assertThat(result.content().getFirst().roomId()).isEqualTo(100L); assertThat(result.content().getFirst().title()).isEqualTo("~1~의 정석"); assertThat(result.content().getFirst().participationType()).isEqualTo( - ParticipationType.CREATED); + ParticipationType.CREATED); assertThat(result.content().get(1).participationType()).isEqualTo(ParticipationType.JOINED); }