diff --git a/Java/README.md b/Java/README.md index ff1f7be0..63bb5e63 100644 --- a/Java/README.md +++ b/Java/README.md @@ -14,7 +14,7 @@ -[x] The Quality of an item is never negative -[x] "Aged Brie" actually increases in Quality the older it gets -[x] The Quality of an item is never more than 50 --[ ] "Sulfuras", being a legendary item, never has to be sold or decreases in Quality +-[x] "Sulfuras", being a legendary item, never has to be sold or decreases in Quality -[ ] "Backstage passes", like aged brie, increases in Quality as its SellIn value approaches; -[ ] Quality increases by 2 when there are 10 days or less and by 3 when there are 5 days or less but -[ ] Quality drops to 0 after the concert diff --git a/Java/src/test/java/com/gildedrose/GildedRoseTest.java b/Java/src/test/java/com/gildedrose/GildedRoseTest.java index 93f5db8c..52cd817e 100644 --- a/Java/src/test/java/com/gildedrose/GildedRoseTest.java +++ b/Java/src/test/java/com/gildedrose/GildedRoseTest.java @@ -88,4 +88,22 @@ public class GildedRoseTest { assertEquals(50, app.items[0].quality); } + //Sulfuras, Hand of Ragnaros + @Test + @DisplayName("\"Sulfuras\", being a legendary item, never has to be sold or decreases in Quality") + public void should(){ + Item[] items = new Item[]{TestHelper.getItem("Sulfuras, Hand of Ragnaros", 0, 10)}; + GildedRose app = new GildedRose(items); + + //day 1, don't impact quality + app.updateQuality(); + assertEquals(10, app.items[0].quality); + assertEquals(0, app.items[0].sellIn); + + //day 0, don't impact quality + app.updateQuality(); + assertEquals(10, app.items[0].quality); + assertEquals(0, app.items[0].sellIn); + } + }