From 90ec34d0ab3da6c99b0919bd2da457124a324166 Mon Sep 17 00:00:00 2001 From: Ibrahim Dogrusoz Date: Sun, 28 May 2023 16:20:51 +0200 Subject: [PATCH] At the end of the day it updates the quality value --- .../main/java/com/gildedrose/model/BaseItem.java | 5 +++++ .../java/com/gildedrose/model/BaseItemTest.java | 15 +++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Java/src/main/java/com/gildedrose/model/BaseItem.java b/Java/src/main/java/com/gildedrose/model/BaseItem.java index b9bf5a01..7a16264a 100644 --- a/Java/src/main/java/com/gildedrose/model/BaseItem.java +++ b/Java/src/main/java/com/gildedrose/model/BaseItem.java @@ -18,6 +18,7 @@ public class BaseItem { public void update() { decrementSellIn(); + updateQuality(); } private void decrementSellIn() { @@ -31,4 +32,8 @@ public class BaseItem { public void setQuality(int quality) { item.quality = quality; } + + private void updateQuality() { + setQuality(getQuality() - 1); + } } diff --git a/Java/src/test/java/com/gildedrose/model/BaseItemTest.java b/Java/src/test/java/com/gildedrose/model/BaseItemTest.java index a400ecf3..abe3ebff 100644 --- a/Java/src/test/java/com/gildedrose/model/BaseItemTest.java +++ b/Java/src/test/java/com/gildedrose/model/BaseItemTest.java @@ -9,13 +9,13 @@ class BaseItemTest { @Test void itEncapsulatesTheSellInValueOfTheItem() { - BaseItem baseItem = new BaseItem(new Item("foo", 10, 20)); + BaseItem baseItem = new BaseItem(new Item("test_item", 10, 20)); assertEquals(10, baseItem.getSellIn()); } @Test void itMutatesTheSellInValueOfTheItem() { - BaseItem baseItem = new BaseItem(new Item("foo", 10, 20)); + BaseItem baseItem = new BaseItem(new Item("test_item", 10, 20)); baseItem.setSellIn(9); assertEquals(9, baseItem.getSellIn()); } @@ -28,15 +28,22 @@ class BaseItemTest { @Test void itEncapsulatesTheQualityValueOfTheItem() { - BaseItem baseItem = new BaseItem(new Item("foo", 10, 20)); + BaseItem baseItem = new BaseItem(new Item("test_item", 10, 20)); assertEquals(20, baseItem.getQuality()); } @Test void itMutatesTheQualityValueOfTheItem() { - BaseItem baseItem = new BaseItem(new Item("foo", 10, 20)); + BaseItem baseItem = new BaseItem(new Item("test_item", 10, 20)); baseItem.setQuality(19); assertEquals(19, baseItem.getQuality()); } + @Test + void givenABaseItem_whenUpdated_thenQualityDecrements() { + BaseItem testItem = new BaseItem(new Item("test_item", 10, 10)); + testItem.update(); + assertEquals(9, testItem.getQuality()); + } + }