mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 14:31:28 +00:00
added conjucted items handling and tests
This commit is contained in:
parent
62fa51d8b5
commit
3946492a1e
@ -64,15 +64,15 @@ namespace csharp.UnitTests.Tests
|
||||
}
|
||||
|
||||
[Test]
|
||||
[TestCase(0, 0, 2)]
|
||||
[TestCase(1, 1, 2)]
|
||||
[TestCase(0, 0, 2)]
|
||||
[TestCase(1, 1, 2)]
|
||||
public void UpdateQuality_AgedBrieGetsOlder_AgedBrieIncreasesInQuality(int sellIn, int quality, int expectedResult)
|
||||
{
|
||||
IList<Item> items = new List<Item> { new Item { Name = "Aged Brie", SellIn = sellIn, Quality = quality } };
|
||||
var gildedRose = new GildedRose(items);
|
||||
|
||||
gildedRose.UpdateQuality();
|
||||
|
||||
|
||||
Assert.That(items[0].Quality, Is.EqualTo(expectedResult));
|
||||
}
|
||||
|
||||
@ -172,7 +172,12 @@ namespace csharp.UnitTests.Tests
|
||||
}
|
||||
|
||||
[Test]
|
||||
[TestCase(-1, 20, 18)]
|
||||
[TestCase(-1, 20, 16)]
|
||||
[TestCase(1, 20, 18)]
|
||||
[TestCase(5, 50, 48)]
|
||||
[TestCase(5, 55, 53)]
|
||||
[TestCase(5, 1, 0)]
|
||||
[TestCase(-5, 1, 0)]
|
||||
public void UpdateQuality_ConjuredGetsOlder_ConjuredQualityDegradesTwoTimesFaster(int sellIn, int quality,
|
||||
int expectedResult)
|
||||
{
|
||||
|
||||
@ -11,6 +11,8 @@ namespace csharp
|
||||
_items = items;
|
||||
}
|
||||
|
||||
// V - "Conjured" items degrade in Quality twice as fast as normal items
|
||||
//
|
||||
public void UpdateQuality()
|
||||
{
|
||||
for (var i = 0; i < _items.Count; i++)
|
||||
@ -22,6 +24,11 @@ namespace csharp
|
||||
if (_items[i].Name != "Sulfuras, Hand of Ragnaros")
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality - 1;
|
||||
|
||||
if (_items[i].Name.StartsWith("Conjured") && _items[i].Quality > 0)
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality - 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -29,7 +36,7 @@ namespace csharp
|
||||
{
|
||||
if (_items[i].Quality < 50)
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality + 1;
|
||||
_items[i].Quality++;
|
||||
|
||||
if (_items[i].Name == "Backstage passes to a TAFKAL80ETC concert")
|
||||
{
|
||||
@ -37,7 +44,7 @@ namespace csharp
|
||||
{
|
||||
if (_items[i].Quality < 50)
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality + 1;
|
||||
_items[i].Quality++;
|
||||
}
|
||||
}
|
||||
|
||||
@ -45,7 +52,7 @@ namespace csharp
|
||||
{
|
||||
if (_items[i].Quality < 50)
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality + 1;
|
||||
_items[i].Quality++;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -69,6 +76,11 @@ namespace csharp
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality - 1;
|
||||
}
|
||||
|
||||
if (_items[i].Name.StartsWith("Conjured") && _items[i].Quality > 0)
|
||||
{
|
||||
_items[i].Quality = _items[i].Quality - 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Loading…
Reference in New Issue
Block a user