mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 14:31:28 +00:00
Test for Conjured items passed.
Feature integrated. Signed-off-by: Atul Anand <atulanand206@gmail.com>
This commit is contained in:
parent
559ac9fb91
commit
936527e4d3
@ -5,8 +5,7 @@ class GildedRose(val items: Array[Item]) {
|
||||
def updateQuality() {
|
||||
for (i <- items.indices) {
|
||||
if (isItemNotIncremental(i)) {
|
||||
if (isQualityPositive(i))
|
||||
incrementQuality(i, -1)
|
||||
incrementQualityForNonIncrementalItems(i)
|
||||
} else
|
||||
incrementQualityForIncrementalItems(i)
|
||||
decrementSellInIfNotSulfuras(i)
|
||||
@ -15,6 +14,13 @@ class GildedRose(val items: Array[Item]) {
|
||||
}
|
||||
}
|
||||
|
||||
private def incrementQualityForNonIncrementalItems(i: Int): Unit = {
|
||||
if (isQualityPositive(i)) {
|
||||
incrementQuality(i, -1)
|
||||
additionalIncrementForConjured(i)
|
||||
}
|
||||
}
|
||||
|
||||
private def incrementQualityForIncrementalItems(i: Int): Unit = {
|
||||
if (isQualityLessThan50(i)) {
|
||||
incrementQuality(i, 1)
|
||||
@ -31,6 +37,11 @@ class GildedRose(val items: Array[Item]) {
|
||||
incrementQuality(i, -1)
|
||||
}
|
||||
|
||||
private def additionalIncrementForConjured(i: Int): Unit = {
|
||||
if (isConjured(i))
|
||||
incrementQuality(i, -1)
|
||||
}
|
||||
|
||||
private def additionalIncrementForBackstagePasses(i: Int): Unit = {
|
||||
if (isBackstagePass(i))
|
||||
incrementBackstagePassQuality(i)
|
||||
|
||||
@ -89,8 +89,8 @@ class GildedRoseTest extends AnyWordSpec with Matchers with BeforeAndAfter {
|
||||
}
|
||||
|
||||
"quality of Conjured items degrade twice as fast of elixir" in {
|
||||
val sellIn = 1
|
||||
val quality = 30
|
||||
val sellIn = 10
|
||||
val quality = 10
|
||||
app = createApp(createItemsWithConjuredAndElixir(sellIn, quality))
|
||||
verifyQualityForConjuredAgainstElixir(sellIn)
|
||||
}
|
||||
@ -109,7 +109,8 @@ class GildedRoseTest extends AnyWordSpec with Matchers with BeforeAndAfter {
|
||||
app.updateQuality()
|
||||
val conjuredQualityDrop = prevQualityConjured - app.items(0).quality
|
||||
val elixirQualityDrop = prevQualityElixir - app.items(1).quality
|
||||
assert(conjuredQualityDrop == 2 * elixirQualityDrop)
|
||||
if (conjuredQualityDrop != 0)
|
||||
assert(conjuredQualityDrop == 2 * elixirQualityDrop)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user