From 3a3c79aed85f26eb2a1d963513554488a8b3e661 Mon Sep 17 00:00:00 2001 From: stgctkm Date: Tue, 22 Aug 2023 13:27:26 +0900 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E8=A8=88=E9=87=91=E9=A1=8D=E3=80=81?= =?UTF-8?q?=E5=90=88=E8=A8=88=E3=83=AC=E3=83=B3=E3=82=BF=E3=83=AB=E3=83=9D?= =?UTF-8?q?=E3=82=A4=E3=83=B3=E3=83=88=E3=81=AE=E3=83=86=E3=82=B9=E3=83=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/test/java/video/domain/CustomerTest.java | 96 +------------------ .../video/domain/{ => rental}/RentalTest.java | 5 +- .../java/video/domain/rental/RentalsTest.java | 37 +++++++ 3 files changed, 43 insertions(+), 95 deletions(-) rename src/test/java/video/domain/{ => rental}/RentalTest.java (96%) create mode 100644 src/test/java/video/domain/rental/RentalsTest.java diff --git a/src/test/java/video/domain/CustomerTest.java b/src/test/java/video/domain/CustomerTest.java index 899fff4..823e3e4 100644 --- a/src/test/java/video/domain/CustomerTest.java +++ b/src/test/java/video/domain/CustomerTest.java @@ -11,109 +11,19 @@ class CustomerTest { Movie 子供用作品_となりのトトロ = new Movie("となりのトトロ", PriceType.CHILDREN); Movie 旧作_トップガン = new Movie("トップガン", PriceType.REGULAR); Movie 新作_君たちはどう生きるか = new Movie("君たちはどう生きるか", PriceType.NEW_RELEASE); - @Test - void 新作を4日レンタル() { - Customer sut = new Customer("鈴木一郎"); - sut.addRental(new Rental(新作_君たちはどう生きるか, 4)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(1200, result.totalAmount()); - assertEquals(2, result.frequentRenterPoints()); - }); - } - - @Test - void 新作を1日レンタル() { - Customer sut = new Customer("佐藤華子"); - sut.addRental(new Rental(新作_君たちはどう生きるか, 1)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(300, result.totalAmount()); - assertEquals(1, result.frequentRenterPoints()); - }); - } - - @Test - void 旧作を2日レンタル() { - Customer sut = new Customer("岡山圭太"); - sut.addRental(new Rental(旧作_トップガン, 2)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(200, result.totalAmount()); - assertEquals(1, result.frequentRenterPoints()); - }); - } - - @Test - void 旧作を3日レンタル() { - Customer sut = new Customer("香川真司"); - sut.addRental(new Rental(旧作_トップガン, 3)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(350, result.totalAmount()); - assertEquals(1, result.frequentRenterPoints()); - }); - } - - @Test - void 子供用作品を4日レンタル() { - Customer sut = new Customer("鈴木二郎"); - sut.addRental(new Rental(子供用作品_となりのトトロ, 4)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(300, result.totalAmount()); - assertEquals(1, result.frequentRenterPoints()); - }); - } - - @Test - void 子供用作品を3日レンタル() { - Customer sut = new Customer("広川京子"); - sut.addRental(new Rental(子供用作品_となりのトトロ, 3)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(150, result.totalAmount()); - assertEquals(1, result.frequentRenterPoints()); - }); - } @Test - void 新作と旧作ビデオのレンタル() { + void 新作と旧作と子供用作品のレンタル() { Customer sut = new Customer("John Doe"); sut.addRental(new Rental(旧作_トップガン, 7)); sut.addRental(new Rental(新作_君たちはどう生きるか, 7)); - - RentalResult result = sut.rentalMovies(); - - assertAll(() -> { - assertEquals(3050, result.totalAmount()); - assertEquals(3, result.frequentRenterPoints()); - }); - } - - @Test - void 旧作と子供用作品のレンタル() { - Customer sut = new Customer("Jane Doe"); - sut.addRental(new Rental(旧作_トップガン, 7)); sut.addRental(new Rental(子供用作品_となりのトトロ, 7)); RentalResult result = sut.rentalMovies(); assertAll(() -> { - assertEquals(1700, result.totalAmount()); - assertEquals(2, result.frequentRenterPoints()); + assertEquals(3800, result.totalAmount()); + assertEquals(4, result.frequentRenterPoints()); }); } } \ No newline at end of file diff --git a/src/test/java/video/domain/RentalTest.java b/src/test/java/video/domain/rental/RentalTest.java similarity index 96% rename from src/test/java/video/domain/RentalTest.java rename to src/test/java/video/domain/rental/RentalTest.java index 968916e..11bc539 100644 --- a/src/test/java/video/domain/RentalTest.java +++ b/src/test/java/video/domain/rental/RentalTest.java @@ -1,8 +1,9 @@ -package video.domain; +package video.domain.rental; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; -import video.domain.rental.Rental; +import video.domain.Movie; +import video.domain.PriceType; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/src/test/java/video/domain/rental/RentalsTest.java b/src/test/java/video/domain/rental/RentalsTest.java new file mode 100644 index 0000000..7ab3236 --- /dev/null +++ b/src/test/java/video/domain/rental/RentalsTest.java @@ -0,0 +1,37 @@ +package video.domain.rental; + +import org.junit.jupiter.api.Test; +import video.domain.Movie; +import video.domain.PriceType; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class RentalsTest { + Movie 子供用作品_となりのトトロ = new Movie("となりのトトロ", PriceType.CHILDREN); + Movie 旧作_トップガン = new Movie("トップガン", PriceType.REGULAR); + Movie 新作_君たちはどう生きるか = new Movie("君たちはどう生きるか", PriceType.NEW_RELEASE); + + @Test + void 合計金額の算出() { + + Rentals sut = new Rentals(); + sut.add(new Rental(旧作_トップガン, 7)); + sut.add(new Rental(子供用作品_となりのトトロ, 7)); + + double totalAmount = sut.totalAmount(); + + assertEquals(1700, totalAmount); + + } + + @Test + void 合計レンタルポイントの算出() { + Rentals sut = new Rentals(); + sut.add(new Rental(旧作_トップガン, 7)); + sut.add(new Rental(新作_君たちはどう生きるか, 7)); + + int totalFrequentRenterPoints = sut.totalFrequentRenterPoints(); + + assertEquals(3, totalFrequentRenterPoints); + } +} \ No newline at end of file