From 56a76f32ac42c85103d4298ae8c7b26905bab91c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=8A=B9=EC=A7=84?= Date: Mon, 20 Nov 2023 10:02:12 +0900 Subject: [PATCH 1/4] =?UTF-8?q?[TEST]=20plan=20=ED=85=8C=EC=8A=A4=ED=8A=B8?= =?UTF-8?q?=20=EC=97=90=EB=9F=AC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plan/controller/PlanControllerTest.java | 18 +++++++-------- .../domain/plan/service/PlanServiceTest.java | 22 ++++++++----------- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/backend/src/test/java/com/twtw/backend/domain/plan/controller/PlanControllerTest.java b/backend/src/test/java/com/twtw/backend/domain/plan/controller/PlanControllerTest.java index 5daa2caf..f672e7bd 100644 --- a/backend/src/test/java/com/twtw/backend/domain/plan/controller/PlanControllerTest.java +++ b/backend/src/test/java/com/twtw/backend/domain/plan/controller/PlanControllerTest.java @@ -116,14 +116,14 @@ void savePlan() throws Exception { UUID.randomUUID(), new PlaceDetails( "카페 온마이마인드", - "345", + 345, "https://place.map.kakao.com/1625295668", "음식점 > 카페", "경기 안성시 죽산면 죽산리 414", "경기 안성시 죽산면 죽산초교길 36-4", CategoryGroupCode.CE7, - "127.420430538256", - "37.0766874564297")))) + 127.420430538256, + 37.0766874564297)))) .header( "Authorization", "Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh")); @@ -147,14 +147,14 @@ void getPlanById() throws Exception { UUID.randomUUID(), new PlaceDetails( "카페 온마이마인드", - "345", + 345, "https://place.map.kakao.com/1625295668", "음식점 > 카페", "경기 안성시 죽산면 죽산리 414", "경기 안성시 죽산면 죽산초교길 36-4", CategoryGroupCode.CE7, - "127.420430538256", - "37.0766874564297"), + 127.420430538256, + 37.0766874564297), new GroupInfoResponse( UUID.randomUUID(), UUID.randomUUID(), "홍담진", "http://someUrlToS3"), List.of(new MemberResponse(UUID.randomUUID(), "진호정"))); @@ -215,14 +215,14 @@ void joinPlan() throws Exception { UUID.randomUUID(), new PlaceDetails( "이디야커피 안성죽산점", - "435", + 435, "http://place.map.kakao.com/1562566188", "음식점 > 카페 > 커피전문점 > 이디야커피", "경기 안성시 죽산면 죽산리 118-3", "경기 안성시 죽산면 죽주로 287-1", CategoryGroupCode.CE7, - "127.426865189637", - "37.0764635355795")))) + 127.426865189637, + 37.0764635355795)))) .header( "Authorization", "Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh")); diff --git a/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java b/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java index bd966a7a..9cf42539 100644 --- a/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java +++ b/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java @@ -16,16 +16,15 @@ import com.twtw.backend.fixture.group.GroupEntityFixture; import com.twtw.backend.fixture.member.MemberEntityFixture; import com.twtw.backend.fixture.place.PlaceDetailsFixture; +import com.twtw.backend.fixture.place.PlaceEntityFixture; import com.twtw.backend.fixture.plan.PlanEntityFixture; import com.twtw.backend.support.service.LoginTest; - +import java.util.Optional; +import java.util.UUID; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Optional; -import java.util.UUID; - @DisplayName("PlanService의") class PlanServiceTest extends LoginTest { @@ -70,9 +69,8 @@ void savePlan() { void joinPlan() { // given final Member member = memberRepository.save(MemberEntityFixture.FIRST_MEMBER.toEntity()); - final Plan plan = PlanEntityFixture.FIRST_PLACE.toEntity(member); - final Plan savedPlan = planRepository.save(plan); - final UUID planId = savedPlan.getId(); + final Plan plan = planRepository.save(PlanEntityFixture.FIRST_PLACE.toEntity(member)); + final UUID planId = plan.getId(); // when planService.joinPlan(new PlanMemberRequest(planId)); @@ -98,11 +96,10 @@ void outPlan() { } @Test - @DisplayName("PK로 계획 조회가 수행되는가") + @DisplayName("PK로 계획 조회가 수행되는가") // TODO Fixture 사용하여 저장시 에러 확인 void getPlanById() { // given - final Plan plan = PlanEntityFixture.FIRST_PLACE.toEntity(loginUser); - final UUID planId = planRepository.save(plan).getId(); + final UUID planId = planRepository.save(new Plan(loginUser, PlaceEntityFixture.SECOND_PLACE.toEntity(), GroupEntityFixture.HDJ_GROUP.toEntity())).getId(); // when final PlanInfoResponse result = planService.getPlanById(planId); @@ -112,11 +109,10 @@ void getPlanById() { } @Test - @DisplayName("삭제가 수행되는가") + @DisplayName("삭제가 수행되는가") // TODO Fixture 사용하여 저장시 에러 확인 void deletePlan() { // given - final Plan plan = PlanEntityFixture.SECOND_PLACE.toEntity(loginUser); - final UUID planId = planRepository.save(plan).getId(); + final UUID planId = planRepository.save(new Plan(loginUser, PlaceEntityFixture.SECOND_PLACE.toEntity(), GroupEntityFixture.HDJ_GROUP.toEntity())).getId(); // when planService.deletePlan(planId); From 00d5c5fcf5db2f4fa6b75f2e216a9afa8887899c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=8A=B9=EC=A7=84?= Date: Mon, 20 Nov 2023 10:15:14 +0900 Subject: [PATCH 2/4] =?UTF-8?q?[TEST]=20=EB=B6=88=ED=95=84=EC=9A=94?= =?UTF-8?q?=ED=95=9C=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EA=B5=AC=EB=AC=B8=20?= =?UTF-8?q?=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/twtw/backend/domain/plan/service/PlanServiceTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java b/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java index 9cf42539..7034ea02 100644 --- a/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java +++ b/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java @@ -50,7 +50,6 @@ void searchPlanDestination() { @DisplayName("계획 저장이 수행되는가") void savePlan() { // given - final Plan plan = PlanEntityFixture.FIRST_PLACE.toEntity(loginUser); final UUID groupId = groupRepository.save(GroupEntityFixture.HDJ_GROUP.toEntity()).getId(); // when From e87aa8e0ab0d465cd52497d3f7dbb5ad40df247c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=8A=B9=EC=A7=84?= Date: Mon, 20 Nov 2023 10:15:29 +0900 Subject: [PATCH 3/4] =?UTF-8?q?[TEST]=20plan=20=EC=84=9C=EB=B9=84=EC=8A=A4?= =?UTF-8?q?=20=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 --- .../dto/client/SurroundPlaceRequest.java | 4 +- .../place/service/PlaceServiceTest.java | 71 +++++++++++++++++++ 2 files changed, 73 insertions(+), 2 deletions(-) create mode 100644 backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java diff --git a/backend/src/main/java/com/twtw/backend/domain/place/dto/client/SurroundPlaceRequest.java b/backend/src/main/java/com/twtw/backend/domain/place/dto/client/SurroundPlaceRequest.java index d415bd0c..ee06675d 100644 --- a/backend/src/main/java/com/twtw/backend/domain/place/dto/client/SurroundPlaceRequest.java +++ b/backend/src/main/java/com/twtw/backend/domain/place/dto/client/SurroundPlaceRequest.java @@ -10,7 +10,7 @@ @NoArgsConstructor @AllArgsConstructor public class SurroundPlaceRequest { - private String x; - private String y; + private Double x; + private Double y; private Integer page; } diff --git a/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java b/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java new file mode 100644 index 00000000..c6c1c147 --- /dev/null +++ b/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java @@ -0,0 +1,71 @@ +package com.twtw.backend.domain.place.service; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.BDDMockito.given; + +import com.twtw.backend.domain.place.dto.client.SurroundPlaceRequest; +import com.twtw.backend.domain.place.dto.client.SurroundPlaceResponse; +import com.twtw.backend.domain.place.dto.response.PlaceResponse; +import com.twtw.backend.domain.place.entity.Place; +import com.twtw.backend.domain.plan.dto.client.MetaDetails; +import com.twtw.backend.domain.plan.dto.client.PlaceDetails; +import com.twtw.backend.fixture.place.PlaceDetailsFixture; +import com.twtw.backend.fixture.place.PlaceEntityFixture; +import com.twtw.backend.global.client.KakaoMapClient; +import com.twtw.backend.support.service.LoginTest; +import java.util.List; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.mock.mockito.MockBean; + +@DisplayName("PlaceService의") +class PlaceServiceTest extends LoginTest { + + @Autowired private PlaceService placeService; + @MockBean private KakaoMapClient surroundPlaceClient; + + @Test + @DisplayName("주변 장소 찾기가 수행되는가") + void searchSurroundPlace() { + // given + final SurroundPlaceResponse expected = new SurroundPlaceResponse( + new MetaDetails(true), + List.of(PlaceDetailsFixture.FIRST_PLACE.toPlaceDetails())); + given(surroundPlaceClient.request(any())).willReturn(expected); + + // when + final PlaceResponse result = placeService.searchSurroundPlace(new SurroundPlaceRequest(1.1, 2.2, 1)); + + // then + assertThat(result.getResults()).hasSameElementsAs(expected.getDocuments()); + assertThat(result.getIsLast()).isEqualTo(expected.getMeta().getIsEnd()); + } + + @Test + @DisplayName("Place 엔티티를 통한 dto 생성이 수행되는가") + void getPlaceDetails() { + // given + final Place place = PlaceEntityFixture.FIRST_PLACE.toEntity(); + + // when + final PlaceDetails placeDetails = placeService.getPlaceDetails(place); + + // then + assertThat(placeDetails.getPlaceName()).isEqualTo(place.getPlaceName()); + } + + @Test + @DisplayName("Place dto를 통한 엔티티 생성이 수행되는가") + void getEntityByDetail() { + // given + final PlaceDetails placeDetails = PlaceDetailsFixture.SECOND_PLACE.toPlaceDetails(); + + // when + final Place place = placeService.getEntityByDetail(placeDetails); + + // then + assertThat(place.getPlaceName()).isEqualTo(placeDetails.getPlaceName()); + } +} From 89b413f3c6e8e5bac72275655e87ca5bd8c07d11 Mon Sep 17 00:00:00 2001 From: github-actions <> Date: Mon, 20 Nov 2023 01:16:05 +0000 Subject: [PATCH 4/4] Google Java Format --- .../place/service/PlaceServiceTest.java | 18 +++++++++----- .../domain/plan/service/PlanServiceTest.java | 24 +++++++++++++++---- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java b/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java index c6c1c147..0073bad7 100644 --- a/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java +++ b/backend/src/test/java/com/twtw/backend/domain/place/service/PlaceServiceTest.java @@ -14,29 +14,35 @@ import com.twtw.backend.fixture.place.PlaceEntityFixture; import com.twtw.backend.global.client.KakaoMapClient; import com.twtw.backend.support.service.LoginTest; -import java.util.List; + import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.mock.mockito.MockBean; +import java.util.List; + @DisplayName("PlaceService의") class PlaceServiceTest extends LoginTest { @Autowired private PlaceService placeService; - @MockBean private KakaoMapClient surroundPlaceClient; + + @MockBean + private KakaoMapClient surroundPlaceClient; @Test @DisplayName("주변 장소 찾기가 수행되는가") void searchSurroundPlace() { // given - final SurroundPlaceResponse expected = new SurroundPlaceResponse( - new MetaDetails(true), - List.of(PlaceDetailsFixture.FIRST_PLACE.toPlaceDetails())); + final SurroundPlaceResponse expected = + new SurroundPlaceResponse( + new MetaDetails(true), + List.of(PlaceDetailsFixture.FIRST_PLACE.toPlaceDetails())); given(surroundPlaceClient.request(any())).willReturn(expected); // when - final PlaceResponse result = placeService.searchSurroundPlace(new SurroundPlaceRequest(1.1, 2.2, 1)); + final PlaceResponse result = + placeService.searchSurroundPlace(new SurroundPlaceRequest(1.1, 2.2, 1)); // then assertThat(result.getResults()).hasSameElementsAs(expected.getDocuments()); diff --git a/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java b/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java index 7034ea02..3f97bf6e 100644 --- a/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java +++ b/backend/src/test/java/com/twtw/backend/domain/plan/service/PlanServiceTest.java @@ -19,12 +19,14 @@ import com.twtw.backend.fixture.place.PlaceEntityFixture; import com.twtw.backend.fixture.plan.PlanEntityFixture; import com.twtw.backend.support.service.LoginTest; -import java.util.Optional; -import java.util.UUID; + import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; +import java.util.Optional; +import java.util.UUID; + @DisplayName("PlanService의") class PlanServiceTest extends LoginTest { @@ -98,7 +100,14 @@ void outPlan() { @DisplayName("PK로 계획 조회가 수행되는가") // TODO Fixture 사용하여 저장시 에러 확인 void getPlanById() { // given - final UUID planId = planRepository.save(new Plan(loginUser, PlaceEntityFixture.SECOND_PLACE.toEntity(), GroupEntityFixture.HDJ_GROUP.toEntity())).getId(); + final UUID planId = + planRepository + .save( + new Plan( + loginUser, + PlaceEntityFixture.SECOND_PLACE.toEntity(), + GroupEntityFixture.HDJ_GROUP.toEntity())) + .getId(); // when final PlanInfoResponse result = planService.getPlanById(planId); @@ -111,7 +120,14 @@ void getPlanById() { @DisplayName("삭제가 수행되는가") // TODO Fixture 사용하여 저장시 에러 확인 void deletePlan() { // given - final UUID planId = planRepository.save(new Plan(loginUser, PlaceEntityFixture.SECOND_PLACE.toEntity(), GroupEntityFixture.HDJ_GROUP.toEntity())).getId(); + final UUID planId = + planRepository + .save( + new Plan( + loginUser, + PlaceEntityFixture.SECOND_PLACE.toEntity(), + GroupEntityFixture.HDJ_GROUP.toEntity())) + .getId(); // when planService.deletePlan(planId);