mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-07-26 09:11:26 +00:00
test: add failing specification tests for Conjured items
Conjured items must degrade twice as fast: -2 before sell-by, -4 after, never below 0. Red on purpose (TDD) - the legacy code still treats Conjured as a normal item; they go green once ConjuredItemUpdater lands. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
ecf3d7e54a
commit
a0066f58cd
@ -162,4 +162,37 @@ public class GildedRoseTest
|
||||
var item = UpdateOne(BackstagePass, 5, 49);
|
||||
Assert.Equal(50, item.Quality);
|
||||
}
|
||||
|
||||
// ---------- Conjured items ----------
|
||||
|
||||
[Fact]
|
||||
public void ConjuredItem_BeforeSellBy_QualityDropsByTwo()
|
||||
{
|
||||
var item = UpdateOne("Conjured Mana Cake", 3, 6);
|
||||
Assert.Equal(2, item.SellIn);
|
||||
Assert.Equal(4, item.Quality);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ConjuredItem_OnSellByDate_QualityDropsByFour()
|
||||
{
|
||||
var item = UpdateOne("Conjured Mana Cake", 0, 6);
|
||||
Assert.Equal(-1, item.SellIn);
|
||||
Assert.Equal(2, item.Quality);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ConjuredItem_AfterSellBy_QualityDropsByFour()
|
||||
{
|
||||
var item = UpdateOne("Conjured Mana Cake", -1, 6);
|
||||
Assert.Equal(-2, item.SellIn);
|
||||
Assert.Equal(2, item.Quality);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ConjuredItem_QualityNeverNegative()
|
||||
{
|
||||
var item = UpdateOne("Conjured Mana Cake", 0, 3);
|
||||
Assert.Equal(0, item.Quality);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user