Skip to content

Commit

Permalink
test: #56 테스트 코드 작성
Browse files Browse the repository at this point in the history
  • Loading branch information
dgh06175 committed Sep 10, 2024
1 parent 159a358 commit 5aa78dd
Showing 1 changed file with 36 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,16 @@
import com.cabin.plat.domain.track.repository.LocationRepository;
import com.cabin.plat.domain.track.repository.TrackReportRepository;
import com.cabin.plat.domain.track.repository.TrackRepository;
import com.cabin.plat.global.exception.RestApiException;
import com.cabin.plat.global.exception.errorCode.TrackErrorCode;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.transaction.annotation.Transactional;

Expand All @@ -45,6 +48,8 @@ class TrackServiceTest {
private List<Member> members;
private List<Location> locations;
private List<Track> tracks;
@Autowired
private DataSourceAutoConfiguration dataSourceAutoConfiguration;

@BeforeEach
void setUp() {
Expand Down Expand Up @@ -163,20 +168,6 @@ private List<Track> createTestTracks(List<Member> members, List<Location> locati
.avatar(members.get(0).getAvatar())
.build();

TrackResponse.TrackDetail expectedTrackDetail = TrackResponse.TrackDetail.builder()
.trackId(trackId)
.isrc("isrc1")
.latitude(36.017062)
.longitude(129.321993)
.buildingName("Dormitory 16 (DICE)")
.address("경상북도 포항시 남구 지곡동 287")
.imageUrl("https://testimage1.com")
.content("기숙사에서 한곡")
.likeCount(0)
.isLiked(false)
.member(memberInfo)
.build();

// when
TrackResponse.TrackDetail trackDetail = trackService.getTrackById(members.get(0), trackId);

Expand All @@ -195,7 +186,7 @@ private List<Track> createTestTracks(List<Member> members, List<Location> locati
}

@Nested
class TrackLikeTests {
class 트랙_좋아요_테스트 {

private Long trackId;
private Member member0;
Expand Down Expand Up @@ -315,6 +306,36 @@ void setUp() {
assertThat(thirdPageTracks).hasSize(0);
}

@Nested
class 트랙_삭제_테스트 {
@Test
void 트랙_삭제_성공() {
// given
Member uploader = members.get(0);
Long trackId = tracks.get(0).getId();

// when
TrackResponse.TrackId deletedTrackId = trackService.deleteTrack(uploader, trackId);

// then
assertThat(deletedTrackId.getTrackId()).isEqualTo(trackId);
Optional<Track> track = trackRepository.findById(trackId);
assertThat(track.isPresent()).isTrue();
assertThat(track.get().getDeletedAt()).isNotNull();
}

@Test
void 트랙_삭제_실패_권한없음() {
// given
Member nonUploader = members.get(2); // 다른 멤버
Long trackId = tracks.get(0).getId(); // 삭제하려는 트랙의 ID

// when, then
assertThatThrownBy(() -> trackService.deleteTrack(nonUploader, trackId))
.isInstanceOf(RestApiException.class);
}
}

@Test
void 트랙_신고() {
// given
Expand Down

0 comments on commit 5aa78dd

Please sign in to comment.