Add Unit Tests to initial cases

This commit is contained in:
Roberto de la Banda 2021-09-11 11:56:49 +02:00
parent 07fd22c008
commit b877660aec

View File

@ -14,4 +14,57 @@ class GildedRoseTest {
assertEquals("foo", app.items[0].name); assertEquals("foo", app.items[0].name);
} }
@Test
void degradesTwiceAsFastAfterSellInDateHasPassed() {
Item[] items = new Item[]{new Item("foo", 0, 2)};
new GildedRose(items).updateQuality();
assertEquals(0, items[0].quality);
}
@Test
void neverMustHaveNegativeQuality() {
Item[] items = new Item[]{new Item("foo", 0, 0)};
new GildedRose(items).updateQuality();
assertEquals(0, items[0].quality);
}
@Test
void increaseAgedBrieQualityWhenItGetsOlder() {
Item[] items = new Item[]{new Item("Aged Brie", 0, 2)};
new GildedRose(items).updateQuality();
assertEquals(4, items[0].quality);
}
@Test
void neverMustHaveAnItemWithMoreThan50OfQuality() {
Item[] items = new Item[]{new Item("Aged Brie", 0, 50)};
new GildedRose(items).updateQuality();
assertEquals(50, items[0].quality);
}
@Test
void neverModifySulfurasQuality() {
Item[] items = new Item[]{new Item("Sulfuras, Hand of Ragnaros", 0, 50)};
new GildedRose(items).updateQuality();
assertEquals(50, items[0].quality);
}
@Test
void neverModifySulfurasQualityEvenISGreaterThan50() {
Item[] items = new Item[]{new Item("Sulfuras, Hand of Ragnaros", 0, 80)};
new GildedRose(items).updateQuality();
assertEquals(80, items[0].quality);
}
@Test
void mustIncreaseBackstagePassesQualityWhenItsSellInApproaches() {
Item[] items = new Item[]{new Item("Backstage passes to a TAFKAL80ETC concert", 15, 20),
new Item("Backstage passes to a TAFKAL80ETC concert", 10, 20),
new Item("Backstage passes to a TAFKAL80ETC concert", 5, 20)};
new GildedRose(items).updateQuality();
assertEquals(21, items[0].quality);
assertEquals(22, items[1].quality);
assertEquals(23, items[2].quality);
}
} }