diff --git a/src/main/resources/sql/data.sql b/src/main/resources/sql/data.sql index c153995b6..b434e0b32 100644 --- a/src/main/resources/sql/data.sql +++ b/src/main/resources/sql/data.sql @@ -1,9 +1,9 @@ insert into RACE_RESULT values (1, 10, current_timestamp); insert into CAR -values (1, '우르', 9, 1, 1, current_timestamp); +values (1, '우르', 9, 1, 0, current_timestamp); insert into CAR -values (2, '빙봉', 10, 1, 0, current_timestamp); +values (2, '빙봉', 10, 1, 1, current_timestamp); insert into RACE_RESULT values (2, 5, current_timestamp); diff --git a/src/test/java/racingcar/service/CarServiceIntegrationTest.java b/src/test/java/racingcar/service/CarServiceIntegrationTest.java index 92a88ab32..e6ee6a4cb 100644 --- a/src/test/java/racingcar/service/CarServiceIntegrationTest.java +++ b/src/test/java/racingcar/service/CarServiceIntegrationTest.java @@ -5,13 +5,13 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import racingcar.domain.RacingGame; +import racingcar.support.AbstractIntegrationTestSupporter; import racingcar.util.RandomNumberGenerator; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; @DisplayName("CarService Integration Test") -@SpringBootTest -class CarServiceIntegrationTest { +class CarServiceIntegrationTest extends AbstractIntegrationTestSupporter { @Autowired private CarService carService; diff --git a/src/test/java/racingcar/service/RaceResultServiceIntegrationTest.java b/src/test/java/racingcar/service/RaceResultServiceIntegrationTest.java index d04242e42..da49fe925 100644 --- a/src/test/java/racingcar/service/RaceResultServiceIntegrationTest.java +++ b/src/test/java/racingcar/service/RaceResultServiceIntegrationTest.java @@ -1,26 +1,33 @@ package racingcar.service; import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.MethodOrderer; +import org.junit.jupiter.api.Order; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestMethodOrder; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.jdbc.Sql; +import org.springframework.transaction.annotation.Transactional; import racingcar.service.dto.CarStatusResponse; import racingcar.service.dto.GameInfoRequest; import racingcar.service.dto.RaceResultResponse; +import racingcar.support.AbstractIntegrationTestSupporter; import java.util.List; import static org.assertj.core.api.Assertions.assertThat; -@SpringBootTest @DisplayName("RaceResultService Integration Test") -class RaceResultServiceIntegrationTest { +@TestMethodOrder(MethodOrderer.OrderAnnotation.class) +class RaceResultServiceIntegrationTest extends AbstractIntegrationTestSupporter { @Autowired private RaceResultService raceResultService; @Test @DisplayName("createRaceResult() : 게임 정보를 통해 새로운 게임을 만들 수 있다.") + @Order(1) void test_createRaceResult() throws Exception { //given final String input = "a,b,c,d"; @@ -41,6 +48,7 @@ void test_createRaceResult() throws Exception { @Test @DisplayName("searchRaceResult() : 모든 경기 결과를 조회할 수 있다.") + @Order(2) void test_searchRaceResult() throws Exception { //given final List winnerResult = List.of("빙봉", "a,b,c,d"); diff --git a/src/test/java/racingcar/support/AbstractIntegrationTestSupporter.java b/src/test/java/racingcar/support/AbstractIntegrationTestSupporter.java new file mode 100644 index 000000000..ae0d298a9 --- /dev/null +++ b/src/test/java/racingcar/support/AbstractIntegrationTestSupporter.java @@ -0,0 +1,10 @@ +package racingcar.support; + +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.jdbc.Sql; + +@SpringBootTest +@Sql(value = "/sql/schema.sql", executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD) +@Sql(value = "/sql/data.sql", executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD) +public class AbstractIntegrationTestSupporter { +} diff --git a/src/test/resources/sql/schema.sql b/src/test/resources/sql/schema.sql index 61215b7ae..417f64790 100644 --- a/src/test/resources/sql/schema.sql +++ b/src/test/resources/sql/schema.sql @@ -1,3 +1,6 @@ +DROP TABLE IF EXISTS RACE_RESULT; +DROP TABLE IF EXISTS CAR; + CREATE TABLE RACE_RESULT ( id BIGINT NOT NULL AUTO_INCREMENT,