From 623d3af6b84a3b8cffc9a4b6e2ad08c2d667429a Mon Sep 17 00:00:00 2001 From: jermany17 Date: Mon, 25 Nov 2024 21:32:30 +0900 Subject: [PATCH 1/6] =?UTF-8?q?8=EB=8B=A8=EA=B3=84=20=ED=85=8C=EC=8A=A4?= =?UTF-8?q?=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 --- src/test/java/roomescape/MissionStepTest.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/test/java/roomescape/MissionStepTest.java b/src/test/java/roomescape/MissionStepTest.java index 3091bfedd..11e5e0205 100644 --- a/src/test/java/roomescape/MissionStepTest.java +++ b/src/test/java/roomescape/MissionStepTest.java @@ -156,4 +156,29 @@ public class MissionStepTest { Integer countAfterDelete = jdbcTemplate.queryForObject("SELECT count(1) from reservation", Integer.class); assertThat(countAfterDelete).isEqualTo(0); } + + @Test + void 팔단계() { + Map params = new HashMap<>(); + params.put("time", "10:00"); + + RestAssured.given().log().all() + .contentType(ContentType.JSON) + .body(params) + .when().post("/times") + .then().log().all() + .statusCode(201) + .header("Location", "/times/1"); + + RestAssured.given().log().all() + .when().get("/times") + .then().log().all() + .statusCode(200) + .body("size()", is(1)); + + RestAssured.given().log().all() + .when().delete("/times/1") + .then().log().all() + .statusCode(204); + } } From 0ee18b060608be22b568a4218039f8e2240bc42e Mon Sep 17 00:00:00 2001 From: jermany17 Date: Mon, 25 Nov 2024 21:33:15 +0900 Subject: [PATCH 2/6] =?UTF-8?q?8=EB=8B=A8=EA=B3=84=20-=20=EC=8B=9C?= =?UTF-8?q?=EA=B0=84=20=EA=B4=80=EB=A6=AC=20=EA=B8=B0=EB=8A=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roomescape/controller/TimeController.java | 77 +++++++++++++++++++ src/main/java/roomescape/model/Time.java | 30 ++++++++ src/main/resources/schema.sql | 7 ++ 3 files changed, 114 insertions(+) create mode 100644 src/main/java/roomescape/controller/TimeController.java create mode 100644 src/main/java/roomescape/model/Time.java diff --git a/src/main/java/roomescape/controller/TimeController.java b/src/main/java/roomescape/controller/TimeController.java new file mode 100644 index 000000000..82110d677 --- /dev/null +++ b/src/main/java/roomescape/controller/TimeController.java @@ -0,0 +1,77 @@ +package roomescape.controller; + +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.RowMapper; +import org.springframework.jdbc.support.GeneratedKeyHolder; +import org.springframework.jdbc.support.KeyHolder; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; +import roomescape.model.Time; + +import java.net.URI; +import java.sql.PreparedStatement; +import java.util.List; + +@Controller +public class TimeController { + + private final JdbcTemplate jdbcTemplate; + + public TimeController(JdbcTemplate jdbcTemplate) { + this.jdbcTemplate = jdbcTemplate; + } + + private final RowMapper