public ItemBuilder(ItemType itemType, string name) { product = new InventoryProduct { ItemType = itemType, Name = name }; }
public void UpdateQuality_OnAgedBrie_QualityNeverIncreases(int itemSellIn, int itemQuality) { InventoryProduct item = ItemBuilder.AgedBrie().WithSellIn(itemSellIn).WithQuality(itemQuality).Build(); IList <InventoryProduct> Items = new List <InventoryProduct> { item }; GildedRose app = new GildedRose(Items); app.UpdateQuality(); Assert.AreEqual(50, Items[0].Quality); }
public void UpdateQuality_OnAgedBrie_IncreasesQuality_WhenOnPositiveSellIn(int itemSellIn, int itemQuality, int expectedItemQuality) { InventoryProduct item = ItemBuilder.AgedBrie().WithSellIn(itemSellIn).WithQuality(itemQuality).Build(); IList <InventoryProduct> Items = new List <InventoryProduct> { item }; GildedRose app = new GildedRose(Items); app.UpdateQuality(); Assert.AreEqual(expectedItemQuality, Items[0].Quality); }
public void UpdateQuality_OnNormalItem_QualityNeverDrops(int itemSellIn, int itemQuality) { InventoryProduct item = ItemBuilder.NormalItem().WithSellIn(itemSellIn).WithQuality(itemQuality).Build(); IList <InventoryProduct> Items = new List <InventoryProduct> { item }; GildedRose app = new GildedRose(Items); app.UpdateQuality(); Assert.AreEqual(0, Items[0].Quality); }
public void UpdateQuality_OnBackstagePasses_QualityBecomesZero_WhenOnNegativeSellIn() { int negativeSellIn = -1; int anyItemQuality = 17; InventoryProduct item = ItemBuilder.BackstagePass().WithSellIn(negativeSellIn).WithQuality(anyItemQuality).Build(); IList <InventoryProduct> Items = new List <InventoryProduct> { item }; GildedRose app = new GildedRose(Items); app.UpdateQuality(); Assert.AreEqual(0, Items[0].Quality); }
public void UpdateQuality_OnSulfuras_QualityStaysSame(int amountOfUpdates) { int itemQuality = 5; int sellIn = 15; InventoryProduct item = ItemBuilder.Sulfuras().WithSellIn(sellIn).WithQuality(itemQuality).Build(); IList <InventoryProduct> Items = new List <InventoryProduct> { item }; GildedRose app = new GildedRose(Items); for (int i = 0; i < amountOfUpdates; i++) { app.UpdateQuality(); } Assert.AreEqual(itemQuality, Items[0].Quality); Assert.AreEqual(sellIn, Items[0].SellIn); }