From 33779527c447467af28278ef734b43d559a5052f Mon Sep 17 00:00:00 2001 From: stgctkm Date: Tue, 22 Aug 2023 12:53:51 +0900 Subject: [PATCH] =?UTF-8?q?=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=E7=AE=97=E5=87=BA=E3=83=A1=E3=82=BD?= =?UTF-8?q?=E3=83=83=E3=83=89=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/RentalTest.java | 101 +++++++++++++++------ 1 file changed, 73 insertions(+), 28 deletions(-) diff --git a/src/test/java/video/domain/RentalTest.java b/src/test/java/video/domain/RentalTest.java index bf868bc..e0465c0 100644 --- a/src/test/java/video/domain/RentalTest.java +++ b/src/test/java/video/domain/RentalTest.java @@ -1,5 +1,6 @@ package video.domain; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -9,49 +10,93 @@ class RentalTest { Movie 子供用作品_となりのトトロ = new Movie("となりのトトロ", PriceType.CHILDREN); Movie 旧作_トップガン = new Movie("トップガン", PriceType.REGULAR); Movie 新作_君たちはどう生きるか = new Movie("君たちはどう生きるか", PriceType.NEW_RELEASE); - @Test - void 新作を4日のレンタル料金() { - Rental sut = new Rental(新作_君たちはどう生きるか, 4); - double result = sut.amount(); + @Nested + class レンタル料金テスト { + @Test + void 新作を4日のレンタル料金() { + Rental sut = new Rental(新作_君たちはどう生きるか, 4); - assertEquals(1200, result); - } + double result = sut.amount(); + assertEquals(1200, result); + } - @Test - void 旧作を2日のレンタル料金() { - Rental sut = new Rental(旧作_トップガン, 2); - double result = sut.amount(); + @Test + void 旧作を2日のレンタル料金() { + Rental sut = new Rental(旧作_トップガン, 2); - assertEquals(200, result); - } + double result = sut.amount(); - @Test - void 旧作を3日のレンタル料金() { - Rental sut = new Rental(旧作_トップガン, 3); + assertEquals(200, result); + } - double result = sut.amount(); + @Test + void 旧作を3日のレンタル料金() { + Rental sut = new Rental(旧作_トップガン, 3); - assertEquals(350, result); - } + double result = sut.amount(); + + assertEquals(350, result); + } + + @Test + void 子供用作品を4日のレンタル料金() { + Rental sut = new Rental(子供用作品_となりのトトロ, 4); - @Test - void 子供用作品を4日のレンタル料金() { - Rental sut = new Rental(子供用作品_となりのトトロ, 4); + double result = sut.amount(); - double result = sut.amount(); + assertEquals(300, result); + } - assertEquals(300, result); + @Test + void 子供用作品を3日のレンタル料金() { + Rental sut = new Rental(子供用作品_となりのトトロ, 3); + + double result = sut.amount(); + + assertEquals(150, result); + } } - @Test - void 子供用作品を3日のレンタル料金() { - Rental sut = new Rental(子供用作品_となりのトトロ, 3); + @Nested + class レンタルポイントテスト { + @Test + void 新作を4日のレンタルポイント() { + Rental sut = new Rental(新作_君たちはどう生きるか, 4); + + int result = sut.frequentRenterPoints(); + + assertEquals(2, result); + } - double result = sut.amount(); + @Test + void 新作を1日のレンタルポイント() { + Rental sut = new Rental(新作_君たちはどう生きるか, 1); - assertEquals(150, result); + int result = sut.frequentRenterPoints(); + + assertEquals(1, result); + } + + @Test + void 旧作のレンタルポイント() { + Rental sut = new Rental(旧作_トップガン, 2); + + int result = sut.frequentRenterPoints(); + + assertEquals(1, result); + } + + @Test + void 子供用作品のレンタル料金() { + Rental sut = new Rental(子供用作品_となりのトトロ, 3); + + int result = sut.frequentRenterPoints(); + + assertEquals(1, result); + } } + } \ No newline at end of file