public static DefaultItem CreateItem(Item item) { DefaultItem createdItem; switch (item.Name) { case "Aged Brie": createdItem = new IncreaseQualityItem(item); break; case "Sulfuras, Hand of Ragnaros": createdItem = new LegendaryItem(item); break; case "Backstage passes to a TAFKAL80ETC concert": createdItem = new BackstagePassItem(item); break; case "Conjured Mana Cake": createdItem = new ConjuredItem(item); break; default: createdItem = new DefaultItem(item); break; } return(createdItem); }
public void ShouldNotIncreaseQualityAboveMaximum(int sellIn, int quality) { // arrange var item = new BackstagePassItem(sellIn, quality); // act item.Update(); // assert Assert.Equal(MaximumQuality, item.Quality); }
public void ShouldResetBackstagePassQualityIfExpired(int sellIn, int quality, int expectedQuality) { // arrange var item = new BackstagePassItem(sellIn, quality); // act item.Update(); // assert Assert.Equal(expectedQuality, item.Quality); }
public void BackstagePassItemUpdateQualityTest() { var item = new BackstagePassItem() { Quality = 20, SellIn = 15 }; item.UpdateQuality(); Assert.IsTrue(item.Quality == 21 && item.SellIn == 14); }