mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2025-12-12 20:32:15 +00:00
fixing gildedrose in rescript
This commit is contained in:
parent
30a5c129d9
commit
c022ce6c0b
@ -17,70 +17,78 @@ var Item = {
|
|||||||
function updateQuality(items) {
|
function updateQuality(items) {
|
||||||
return items.map(function (item) {
|
return items.map(function (item) {
|
||||||
var newItem = item;
|
var newItem = item;
|
||||||
if (item.name !== "Aged Brie" && item.name !== "Backstage passes to a TAFKAL80ETC concert") {
|
if (newItem.name !== "Aged Brie" && newItem.name !== "Backstage passes to a TAFKAL80ETC concert") {
|
||||||
if (item.quality > 0 && item.name !== "Sulfuras, Hand of Ragnaros") {
|
if (newItem.quality > 0 && newItem.name !== "Sulfuras, Hand of Ragnaros") {
|
||||||
|
var init = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init.sellIn,
|
||||||
quality: item.quality - 1 | 0
|
quality: newItem.quality - 1 | 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (item.quality < 50) {
|
} else if (newItem.quality < 50) {
|
||||||
|
var init$1 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$1.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init$1.sellIn,
|
||||||
quality: item.quality + 1 | 0
|
quality: newItem.quality + 1 | 0
|
||||||
};
|
};
|
||||||
if (item.name === "Backstage passes to a TAFKAL80ETC concert") {
|
if (newItem.name === "Backstage passes to a TAFKAL80ETC concert") {
|
||||||
if (item.sellIn < 11 && item.quality < 50) {
|
if (newItem.sellIn < 11 && newItem.quality < 50) {
|
||||||
|
var init$2 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$2.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init$2.sellIn,
|
||||||
quality: item.quality + 1 | 0
|
quality: newItem.quality + 1 | 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
if (item.sellIn < 6 && item.quality < 50) {
|
if (newItem.sellIn < 6 && newItem.quality < 50) {
|
||||||
|
var init$3 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$3.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init$3.sellIn,
|
||||||
quality: item.quality + 1 | 0
|
quality: newItem.quality + 1 | 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
if (item.name !== "Sulfuras, Hand of Ragnaros") {
|
if (newItem.name !== "Sulfuras, Hand of Ragnaros") {
|
||||||
|
var init$4 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$4.name,
|
||||||
sellIn: item.sellIn - 1 | 0,
|
sellIn: newItem.sellIn - 1 | 0,
|
||||||
quality: item.quality
|
quality: init$4.quality
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
if (item.sellIn < 0) {
|
if (newItem.sellIn < 0) {
|
||||||
if (item.name !== "Aged Brie") {
|
if (newItem.name !== "Aged Brie") {
|
||||||
if (item.name !== "Backstage passes to a TAFKAL80ETC concert") {
|
if (newItem.name !== "Backstage passes to a TAFKAL80ETC concert") {
|
||||||
if (item.quality > 0 && item.name !== "Sulfuras, Hand of Ragnaros") {
|
if (newItem.quality > 0 && newItem.name !== "Sulfuras, Hand of Ragnaros") {
|
||||||
|
var init$5 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$5.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init$5.sellIn,
|
||||||
quality: item.quality - 1 | 0
|
quality: newItem.quality - 1 | 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
var init$6 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$6.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init$6.sellIn,
|
||||||
quality: 0
|
quality: newItem.quality - newItem.quality | 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
} else if (item.quality < 50) {
|
} else if (newItem.quality < 50) {
|
||||||
|
var init$7 = newItem;
|
||||||
newItem = {
|
newItem = {
|
||||||
name: item.name,
|
name: init$7.name,
|
||||||
sellIn: item.sellIn,
|
sellIn: init$7.sellIn,
|
||||||
quality: item.quality + 1 | 0
|
quality: newItem.quality + 1 | 0
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -16,47 +16,53 @@ let updateQuality = (items: array<Item.t>) => {
|
|||||||
items->Js.Array2.map(item => {
|
items->Js.Array2.map(item => {
|
||||||
let newItem = ref(item)
|
let newItem = ref(item)
|
||||||
|
|
||||||
if item.name != "Aged Brie" && item.name != "Backstage passes to a TAFKAL80ETC concert" {
|
if (
|
||||||
if item.quality > 0 {
|
newItem.contents.name != "Aged Brie" &&
|
||||||
if item.name != "Sulfuras, Hand of Ragnaros" {
|
newItem.contents.name != "Backstage passes to a TAFKAL80ETC concert"
|
||||||
newItem := {...item, quality: item.quality - 1}
|
) {
|
||||||
|
if newItem.contents.quality > 0 {
|
||||||
|
if newItem.contents.name != "Sulfuras, Hand of Ragnaros" {
|
||||||
|
newItem := {...newItem.contents, quality: newItem.contents.quality - 1}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if item.quality < 50 {
|
} else if newItem.contents.quality < 50 {
|
||||||
newItem := {...item, quality: item.quality + 1}
|
newItem := {...newItem.contents, quality: newItem.contents.quality + 1}
|
||||||
|
|
||||||
if item.name == "Backstage passes to a TAFKAL80ETC concert" {
|
if newItem.contents.name == "Backstage passes to a TAFKAL80ETC concert" {
|
||||||
if item.sellIn < 11 {
|
if newItem.contents.sellIn < 11 {
|
||||||
if item.quality < 50 {
|
if newItem.contents.quality < 50 {
|
||||||
newItem := {...item, quality: item.quality + 1}
|
newItem := {...newItem.contents, quality: newItem.contents.quality + 1}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if item.sellIn < 6 {
|
if newItem.contents.sellIn < 6 {
|
||||||
if item.quality < 50 {
|
if newItem.contents.quality < 50 {
|
||||||
newItem := {...item, quality: item.quality + 1}
|
newItem := {...newItem.contents, quality: newItem.contents.quality + 1}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if item.name != "Sulfuras, Hand of Ragnaros" {
|
if newItem.contents.name != "Sulfuras, Hand of Ragnaros" {
|
||||||
newItem := {...item, sellIn: item.sellIn - 1}
|
newItem := {...newItem.contents, sellIn: newItem.contents.sellIn - 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
if item.sellIn < 0 {
|
if newItem.contents.sellIn < 0 {
|
||||||
if item.name != "Aged Brie" {
|
if newItem.contents.name != "Aged Brie" {
|
||||||
if item.name != "Backstage passes to a TAFKAL80ETC concert" {
|
if newItem.contents.name != "Backstage passes to a TAFKAL80ETC concert" {
|
||||||
if item.quality > 0 {
|
if newItem.contents.quality > 0 {
|
||||||
if item.name != "Sulfuras, Hand of Ragnaros" {
|
if newItem.contents.name != "Sulfuras, Hand of Ragnaros" {
|
||||||
newItem := {...item, quality: item.quality - 1}
|
newItem := {...newItem.contents, quality: newItem.contents.quality - 1}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
newItem := {...item, quality: 0}
|
newItem := {
|
||||||
|
...newItem.contents,
|
||||||
|
quality: newItem.contents.quality - newItem.contents.quality,
|
||||||
}
|
}
|
||||||
} else if item.quality < 50 {
|
}
|
||||||
newItem := {...item, quality: item.quality + 1}
|
} else if newItem.contents.quality < 50 {
|
||||||
|
newItem := {...newItem.contents, quality: newItem.contents.quality + 1}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user