mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 22:41:30 +00:00
Create module for standard item
This commit is contained in:
parent
a94eb8c5f6
commit
1a8c9a073f
@ -1,3 +1,9 @@
|
|||||||
|
function updateQuality(item) {
|
||||||
|
if (is(item)) {
|
||||||
|
item.quality += getQualityChange(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function getQualityChange(item) {
|
function getQualityChange(item) {
|
||||||
if (item.sellIn <= 0) {
|
if (item.sellIn <= 0) {
|
||||||
return 2;
|
return 2;
|
||||||
@ -10,4 +16,4 @@ function is(item) {
|
|||||||
return item.name.toLowerCase().match(/aged brie/);
|
return item.name.toLowerCase().match(/aged brie/);
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = { is, getQualityChange };
|
module.exports = { updateQuality, is };
|
||||||
@ -1,3 +1,9 @@
|
|||||||
|
function updateQuality(item) {
|
||||||
|
if (is(item)) {
|
||||||
|
item.quality += getQualityChange(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function getQualityChange(item) {
|
function getQualityChange(item) {
|
||||||
if (item.sellIn <= 0) {
|
if (item.sellIn <= 0) {
|
||||||
return -item.quality;
|
return -item.quality;
|
||||||
@ -14,4 +20,4 @@ function is(item) {
|
|||||||
return item.name.toLowerCase().match(/backstage pass/);
|
return item.name.toLowerCase().match(/backstage pass/);
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = { is, getQualityChange };
|
module.exports = { updateQuality, is };
|
||||||
@ -1,5 +1,6 @@
|
|||||||
var backstage_pass = require('./backstage_pass_update.js')
|
var standardItem = require('./standard_update.js')
|
||||||
var aged_brie = require('./aged_brie_update.js')
|
var backstagePass = require('./backstage_pass_update.js')
|
||||||
|
var agedBrie = require('./aged_brie_update.js')
|
||||||
var sulfuras = require('./sulfuras_update.js')
|
var sulfuras = require('./sulfuras_update.js')
|
||||||
|
|
||||||
class Shop {
|
class Shop {
|
||||||
@ -23,12 +24,15 @@ class Shop {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_updateItemQuality(item) {
|
_updateItemQuality(item) {
|
||||||
item.quality += this._getQualityChange(item);
|
standardItem.updateQuality(item);
|
||||||
|
backstagePass.updateQuality(item);
|
||||||
|
agedBrie.updateQuality(item);
|
||||||
|
sulfuras.updateQuality(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
_getQualityChange(item) {
|
_getQualityChange(item) {
|
||||||
if (backstage_pass.is(item)) {
|
if (backstagePass.is(item)) {
|
||||||
return backstage_pass.getQualityChange(item);
|
return 0;
|
||||||
} else if (aged_brie.is(item)) {
|
} else if (aged_brie.is(item)) {
|
||||||
return aged_brie.getQualityChange(item);
|
return aged_brie.getQualityChange(item);
|
||||||
} else if (sulfuras.is(item)) {
|
} else if (sulfuras.is(item)) {
|
||||||
|
|||||||
23
js-jasmine/src/standard_update.js
Normal file
23
js-jasmine/src/standard_update.js
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
var backstagePass = require('./backstage_pass_update.js')
|
||||||
|
var agedBrie = require('./aged_brie_update.js')
|
||||||
|
var sulfuras = require('./sulfuras_update.js')
|
||||||
|
|
||||||
|
function updateQuality(item) {
|
||||||
|
if (is(item)) {
|
||||||
|
item.quality += getQualityChange(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getQualityChange(item) {
|
||||||
|
if (item.sellIn <= 0) {
|
||||||
|
return -2;
|
||||||
|
} else {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function is(item) {
|
||||||
|
return !(backstagePass.is(item) || agedBrie.is(item) || sulfuras.is(item))
|
||||||
|
};
|
||||||
|
|
||||||
|
module.exports = { updateQuality };
|
||||||
@ -1,3 +1,9 @@
|
|||||||
|
function updateQuality(item) {
|
||||||
|
if (is(item)) {
|
||||||
|
item.quality += getQualityChange(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function getQualityChange(item) {
|
function getQualityChange(item) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -6,4 +12,4 @@ function is(item) {
|
|||||||
return item.name.toLowerCase().match(/sulfuras/);
|
return item.name.toLowerCase().match(/sulfuras/);
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = { is, getQualityChange };
|
module.exports = { updateQuality, is };
|
||||||
Loading…
Reference in New Issue
Block a user