From 03d18cbc16c5e68bd0a473784d5c0cd7df2a2378 Mon Sep 17 00:00:00 2001 From: Jeremie Magnette Date: Sat, 19 Dec 2020 16:28:43 +0100 Subject: [PATCH] Adding unittests for Conjured Item [Failing] --- csharpcore/GildedRoseTest.cs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/csharpcore/GildedRoseTest.cs b/csharpcore/GildedRoseTest.cs index 932f3423..44a294d8 100644 --- a/csharpcore/GildedRoseTest.cs +++ b/csharpcore/GildedRoseTest.cs @@ -116,6 +116,34 @@ namespace csharpcore Assert.Equal(beforeSellIn - 1, items[0].SellIn); } + [Theory] + [InlineData(7, 10, 8)] + [InlineData(0, 10, 6)] + public void UpdateQuality_ConjuredItem_QualityDecreases(int beforeSellIn, int beforeQuality, int afterQuality) + { + IList items = new List { new Item { Name = "Old Conjured Helmet", SellIn = beforeSellIn, Quality = beforeQuality } }; + GildedRose app = new GildedRose(items); + + app.UpdateQuality(); + + Assert.Equal(afterQuality, items[0].Quality); + Assert.Equal(beforeSellIn - 1, items[0].SellIn); + } + + [Theory] + [InlineData(7, 0, 0)] + [InlineData(0, 0, 0)] + public void UpdateQuality_ConjuredItemMinQuality_QualityCannotGoNegative(int beforeSellIn, int beforeQuality, int afterQuality) + { + IList items = new List { new Item { Name = "Conjured Cake the is a lie !", SellIn = beforeSellIn, Quality = beforeQuality } }; + GildedRose app = new GildedRose(items); + + app.UpdateQuality(); + + Assert.Equal(afterQuality, items[0].Quality); + Assert.Equal(beforeSellIn - 1, items[0].SellIn); + } + [Theory] [InlineData(7, 10, 9)] [InlineData(0, 10, 8)]