mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-10-14 18:15:41 +00:00
added scala translation
This commit is contained in:
1 parent
567c27854a
commit
f60240f6b1
4 files changed
+82
No files matched your search
@@ -0,0 +1,7 @@
|
||||
name := "GildedRose"
|
||||
|
||||
version := "1.0"
|
||||
|
||||
scalaVersion := "2.10.2"
|
||||
|
||||
libraryDependencies += "org.scalatest" % "scalatest_2.10" % "2.0"
|
||||
@@ -0,0 +1,58 @@
|
||||
package com.gildedrose
|
||||
|
||||
class GildedRose(val items: Array[Item]) {
|
||||
|
||||
|
||||
def updateQuality() {
|
||||
for (i <- 0 until items.length) {
|
||||
if (!items(i).name.equals("Aged Brie")
|
||||
&& !items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
||||
if (items(i).quality > 0) {
|
||||
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
|
||||
items(i).quality = items(i).quality - 1
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (items(i).quality < 50) {
|
||||
items(i).quality = items(i).quality + 1
|
||||
|
||||
if (items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
||||
if (items(i).sellIn < 11) {
|
||||
if (items(i).quality < 50) {
|
||||
items(i).quality = items(i).quality + 1
|
||||
}
|
||||
}
|
||||
|
||||
if (items(i).sellIn < 6) {
|
||||
if (items(i).quality < 50) {
|
||||
items(i).quality = items(i).quality + 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
|
||||
items(i).sellIn = items(i).sellIn - 1
|
||||
}
|
||||
|
||||
if (items(i).sellIn < 0) {
|
||||
if (!items(i).name.equals("Aged Brie")) {
|
||||
if (!items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
||||
if (items(i).quality > 0) {
|
||||
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
|
||||
items(i).quality = items(i).quality - 1
|
||||
}
|
||||
}
|
||||
} else {
|
||||
items(i).quality = items(i).quality - items(i).quality
|
||||
}
|
||||
} else {
|
||||
if (items(i).quality < 50) {
|
||||
items(i).quality = items(i).quality + 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package com.gildedrose
|
||||
|
||||
class Item(val name: String, var sellIn: Int, var quality: Int) {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.gildedrose
|
||||
|
||||
import org.scalatest._
|
||||
|
||||
class GildedRoseTest extends FlatSpec with Matchers {
|
||||
it should "foo" in {
|
||||
var items = Array[Item](new Item("foo", 0, 0))
|
||||
val app = new GildedRose(items)
|
||||
app.updateQuality()
|
||||
(app.items(0).name) should equal ("fixme")
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user