mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 22:41:30 +00:00
Failing test for Conjured items.
Signed-off-by: Atul Anand <atulanand206@gmail.com>
This commit is contained in:
parent
c29949a491
commit
559ac9fb91
@ -50,7 +50,7 @@ class GildedRoseTest extends AnyWordSpec with Matchers with BeforeAndAfter {
|
|||||||
itemCreator.backstagePassItem(sellIn, quality),
|
itemCreator.backstagePassItem(sellIn, quality),
|
||||||
itemCreator.agedBrieItem(sellIn, quality),
|
itemCreator.agedBrieItem(sellIn, quality),
|
||||||
itemCreator.dexterityItem(sellIn, quality),
|
itemCreator.dexterityItem(sellIn, quality),
|
||||||
itemCreator.elixirItem(sellIn, quality),
|
itemCreator.elixirItem(sellIn, quality)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ class GildedRoseTest extends AnyWordSpec with Matchers with BeforeAndAfter {
|
|||||||
private def createItemsOfDecreasingQuality(sellIn: Int, quality: Int) = {
|
private def createItemsOfDecreasingQuality(sellIn: Int, quality: Int) = {
|
||||||
Array[Item](
|
Array[Item](
|
||||||
itemCreator.dexterityItem(sellIn, quality),
|
itemCreator.dexterityItem(sellIn, quality),
|
||||||
itemCreator.elixirItem(sellIn, quality),
|
itemCreator.elixirItem(sellIn, quality)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,6 +88,31 @@ class GildedRoseTest extends AnyWordSpec with Matchers with BeforeAndAfter {
|
|||||||
assert(i.quality == quality - diff)
|
assert(i.quality == quality - diff)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
"quality of Conjured items degrade twice as fast of elixir" in {
|
||||||
|
val sellIn = 1
|
||||||
|
val quality = 30
|
||||||
|
app = createApp(createItemsWithConjuredAndElixir(sellIn, quality))
|
||||||
|
verifyQualityForConjuredAgainstElixir(sellIn)
|
||||||
|
}
|
||||||
|
|
||||||
|
private def createItemsWithConjuredAndElixir(sellIn: Int, quality: Int) = {
|
||||||
|
Array[Item](
|
||||||
|
itemCreator.conjuredItem(sellIn, quality),
|
||||||
|
itemCreator.elixirItem(sellIn, quality)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
private def verifyQualityForConjuredAgainstElixir(sellIn: Int): Unit = {
|
||||||
|
for (i <- 1 to sellIn) {
|
||||||
|
val prevQualityConjured = app.items(0).quality
|
||||||
|
val prevQualityElixir = app.items(1).quality
|
||||||
|
app.updateQuality()
|
||||||
|
val conjuredQualityDrop = prevQualityConjured - app.items(0).quality
|
||||||
|
val elixirQualityDrop = prevQualityElixir - app.items(1).quality
|
||||||
|
assert(conjuredQualityDrop == 2 * elixirQualityDrop)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
"quality of Aged Brie increases with time and stays below 50" in {
|
"quality of Aged Brie increases with time and stays below 50" in {
|
||||||
app = createApp(createItemsWithOnlyAgedBrie())
|
app = createApp(createItemsWithOnlyAgedBrie())
|
||||||
verifyQualityForAgedBrie()
|
verifyQualityForAgedBrie()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user