From 0c801848ed408dcd45737848cc46fec605ae0cd6 Mon Sep 17 00:00:00 2001 From: Alvaro Gomez Traveso Date: Fri, 16 Dec 2022 11:42:04 +0100 Subject: [PATCH] Create class for age brie items --- .../com/gildedrose/items/AgedBrieItem.java | 20 ++++++++++++++++ .../gildedrose/items/AgedBrieItemTest.java | 23 +++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 Java/src/main/java/com/gildedrose/items/AgedBrieItem.java create mode 100644 Java/src/test/java/com/gildedrose/items/AgedBrieItemTest.java diff --git a/Java/src/main/java/com/gildedrose/items/AgedBrieItem.java b/Java/src/main/java/com/gildedrose/items/AgedBrieItem.java new file mode 100644 index 00000000..3245919e --- /dev/null +++ b/Java/src/main/java/com/gildedrose/items/AgedBrieItem.java @@ -0,0 +1,20 @@ +package com.gildedrose.items; + +import com.gildedrose.Quality; +import com.gildedrose.SellIn; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +public class AgedBrieItem extends GildedRoseItem { + + public AgedBrieItem(SellIn sellIn, Quality quality, boolean conjured) { + super("Aged Brie", sellIn, quality, conjured); + } + + @Override + protected Quality nextQuality(Quality previous) { + Quality nextQuality = previous.copy(); + nextQuality.increment(); + return nextQuality; + } +} diff --git a/Java/src/test/java/com/gildedrose/items/AgedBrieItemTest.java b/Java/src/test/java/com/gildedrose/items/AgedBrieItemTest.java new file mode 100644 index 00000000..f196e184 --- /dev/null +++ b/Java/src/test/java/com/gildedrose/items/AgedBrieItemTest.java @@ -0,0 +1,23 @@ +package com.gildedrose.items; + +import static org.assertj.core.api.Assertions.assertThat; + +import com.gildedrose.Quality; +import com.gildedrose.SellIn; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +class AgedBrieItemTest { + private final AgedBrieItem item = + new AgedBrieItem(SellIn.create(2), Quality.create(0), Boolean.FALSE); + + @Nested + class nextQuality { + @Test + void should_increment_quality_in_one() { + Quality nextQuality = item.nextQuality(Quality.create(0)); + + assertThat(nextQuality).isEqualTo(Quality.create(1)); + } + } +}