diff --git a/Java/src/main/java/com/gildedrose/GildedRose.java b/Java/src/main/java/com/gildedrose/GildedRose.java index e3eaa77c..0b6a99b5 100644 --- a/Java/src/main/java/com/gildedrose/GildedRose.java +++ b/Java/src/main/java/com/gildedrose/GildedRose.java @@ -9,10 +9,9 @@ class GildedRose { public void updateQuality() { for (int i = 0; i < items.length; i++) { - if (!items[i].name.equals("Aged Brie") - && !items[i].name.equals("Backstage passes to a TAFKAL80ETC concert")) { - updateItem(items[i]); - } else { + // first if defnie what should decrease and what should increase + if (items[i].name.equals("Backstage passes to a TAFKAL80ETC concert") | + items[i].name.equals("Aged Brie")) { if (items[i].quality < 50) { items[i].quality = items[i].quality + 1; @@ -25,6 +24,14 @@ class GildedRose { } } } + } else { + if (items[i].quality > 0 & !items[i].name.equals("Sulfuras, Hand of Ragnaros")) { + items[i].quality = items[i].quality - 1; + + if (items[i].name.equals("Conjured Mana Cake") & items[i].quality > 0) { + items[i].quality = items[i].quality - 1; + } + } } if (!items[i].name.equals("Sulfuras, Hand of Ragnaros")) { @@ -48,12 +55,12 @@ class GildedRose { } public void updateItem(Item item) { - if (item.quality > 0 & !item.name.equals("Sulfuras, Hand of Ragnaros")) { - item.quality = item.quality - 1; + if (item.quality > 0 & !item.name.equals("Sulfuras, Hand of Ragnaros")) { + item.quality = item.quality - 1; - if (item.name.equals("Conjured Mana Cake") && item.quality > 0) { - item.quality = item.quality - 1; - } + if (item.name.equals("Conjured Mana Cake") && item.quality > 0) { + item.quality = item.quality - 1; + } } } diff --git a/Java/src/test/java/com/gildedrose/GildedRoseTest.java b/Java/src/test/java/com/gildedrose/GildedRoseTest.java index a58afd68..8d64c25e 100644 --- a/Java/src/test/java/com/gildedrose/GildedRoseTest.java +++ b/Java/src/test/java/com/gildedrose/GildedRoseTest.java @@ -54,7 +54,7 @@ class UpdateQualityTest { } @Test - void qualityItemNeverNegatif() { + void qualityItemNeverNegative() { System.out.println("The Quality of an item is never negative"); Item[] items = new Item[]{ new Item("+5 Dexterity Vest", 10, 1), @@ -63,6 +63,7 @@ class UpdateQualityTest { GildedRose app = new GildedRose(items); app.updateQuality(); app.updateQuality(); + System.out.println(app.items[0].quality); assertEquals(0, app.items[0].quality); assertEquals(0, app.items[1].quality); }