public static void Main(string[] args) { Console.WriteLine("OMGHAI!"); IList <Item> Items = new List <Item> { new Item { Name = "+5 Dexterity Vest", SellIn = 10, Quality = 20 }, new Item { Name = "Aged Brie", SellIn = 2, Quality = 0 }, new Item { Name = "Elixir of the Mongoose", SellIn = 5, Quality = 7 }, new Item { Name = "Sulfuras, Hand of Ragnaros", SellIn = 0, Quality = 80 }, new Item { Name = "Sulfuras, Hand of Ragnaros", SellIn = -1, Quality = 80 }, new Item { Name = "Backstage passes to a TAFKAL80ETC concert", SellIn = 15, Quality = 20 }, new Item { Name = "Backstage passes to a TAFKAL80ETC concert", SellIn = 10, Quality = 49 }, new Item { Name = "Backstage passes to a TAFKAL80ETC concert", SellIn = 5, Quality = 49 }, // this conjured item does not work properly yet new Item { Name = "Conjured Mana Cake", SellIn = 3, Quality = 6 } }; GildedRose.GildedRose app = new GildedRose.GildedRose(Items); for (int i = 0; i < 31; i++) { Console.WriteLine("-------- day " + i + " --------"); Console.WriteLine("name, sellIn, quality"); for (int j = 0; j < Items.Count; j++) { Console.WriteLine(Items[j]); } Console.WriteLine(""); app.UpdateQuality(); } }
public void Given_Sulfuras_Should_KeepSellIn() { IList <Item> items = ListWithItem("Sulfuras, Hand of Ragnaros", 10, 80); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(10, items[0].SellIn); }
public void Given_BackstagePasses_WithSellIn0_Should_DropToZeroQuality() { IList <Item> items = ListWithItem("Backstage passes to a TAFKAL80ETC concert", 0, 2); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(0, items[0].Quality); }
public void Given_AgedBrie_Should_IncreaseQualityTwiceAfterSellIn() { IList <Item> items = ListWithItem("Aged Brie", 0, 2); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(4, items[0].Quality); }
public void Given_AgedBrie_Should_NotPass50Quality() { IList <Item> items = ListWithItem("Aged Brie", 10, 50); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(50, items[0].Quality); }
public void Given_RegularItem_Should_DecreaseQualityTwiceAfterSellIn() { IList <Item> items = ListWithItem("foo", 0, 10); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(8, items[0].Quality); }
public void Given_RegularItem_Should_DecreaseQualityOnceWhenSellInIsOne() { IList <Item> items = ListWithItem("foo", 1, 10); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(9, items[0].Quality); }
public void Given_ConjuredItem_Should_DegradeInQualityTwiceAsFastAlsoPastSellIn() { IList <Item> items = ListWithItem("Conjured Mana Cake", 0, 10); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(6, items[0].Quality); }
public void Given_BackstagePasses_WithSellIn1_Should_Increase3InQuality() { IList <Item> items = ListWithItem("Backstage passes to a TAFKAL80ETC concert", 1, 2); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(5, items[0].Quality); }
public void Given_BackstagePasses_WithTripleSellIn_Should_NotPass50Quality() { IList <Item> items = ListWithItem("Backstage passes to a TAFKAL80ETC concert", 4, 48); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual(50, items[0].Quality); }
public void Given_RegularItem_Should_NotDecreaseQualityBelowZero() { IList <Item> items = ListWithItem("foo", 5, 1); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); app.UpdateQuality(); app.UpdateQuality(); Assert.AreEqual(0, items[0].Quality); }
public void Given_RegularItem_Should_DecreaseSellInAndQuality() { IList <Item> items = ListWithItem("foo", 2, 2); GildedRose.GildedRose app = new GildedRose.GildedRose(items); app.UpdateQuality(); Assert.AreEqual("foo", items[0].Name); Assert.AreEqual(1, items[0].SellIn); Assert.AreEqual(1, items[0].Quality); }
public void DexterityVest_Tests(int day, string name, int expectedsellin, int expectedquality) { var items = new List <Item> { new Item { Name = "+5 Dexterity Vest", SellIn = 10, Quality = 20 } }; var app = new GildedRose.GildedRose(items); for (var i = 0; i < day; i++) { app.UpdateQuality(); } items[0].Name.Should().Be(name); items[0].SellIn.Should().Be(expectedsellin); items[0].Quality.Should().Be(expectedquality); }
public void Sulfuras2_Tests(int day, string name, int expectedsellin, int expectedquality) { var items = new List <Item> { new Sulfuras { Name = "Sulfuras, Hand of Ragnaros", SellIn = -1, Quality = 80 } }; var app = new GildedRose.GildedRose(items); for (var i = 0; i < day; i++) { app.UpdateQuality(); } items[0].Name.Should().Be(name); items[0].SellIn.Should().Be(expectedsellin); items[0].Quality.Should().Be(expectedquality); }
public void Elixir_Tests(int day, string name, int expectedsellin, int expectedquality) { var items = new List <Item> { new Item { Name = "Elixir of the Mongoose", SellIn = 5, Quality = 7 } }; var app = new GildedRose.GildedRose(items); for (var i = 0; i < day; i++) { app.UpdateQuality(); } items[0].Name.Should().Be(name); items[0].SellIn.Should().Be(expectedsellin); items[0].Quality.Should().Be(expectedquality); }
public void AgedBrie_Tests(int day, string name, int expectedsellin, int expectedquality) { var items = new List <Item> { new Cheese { Name = "Aged Brie", SellIn = 2, Quality = 0 } }; var app = new GildedRose.GildedRose(items); for (var i = 0; i < day; i++) { app.UpdateQuality(); } items[0].Name.Should().Be(name); items[0].SellIn.Should().Be(expectedsellin); items[0].Quality.Should().Be(expectedquality); }
public void Conjured_Tests(int day, string name, int expectedsellin, int expectedquality) { var items = new List <Item> { new Conjured(new Item { Name = "Conjured Mana Cake", SellIn = 3, Quality = 6 }) }; var app = new GildedRose.GildedRose(items); for (var i = 0; i < day; i++) { app.UpdateQuality(); } items[0].Name.Should().Be(name); items[0].SellIn.Should().Be(expectedsellin); items[0].Quality.Should().Be(expectedquality); }
public void BackstagePass3_Tests(int day, string name, int expectedsellin, int expectedquality) { var items = new List <Item> { new BackstagePass { Name = "Backstage passes to a TAFKAL80ETC concert", SellIn = 5, Quality = 49 } }; var app = new GildedRose.GildedRose(items); for (var i = 0; i < day; i++) { app.UpdateQuality(); } items[0].Name.Should().Be(name); items[0].SellIn.Should().Be(expectedsellin); items[0].Quality.Should().Be(expectedquality); }