mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-16 06:51:27 +00:00
First refactoring - reduce complexity by introducing submethods
This commit is contained in:
parent
74feefb0ce
commit
0d4fc93666
@ -17,12 +17,10 @@ class GildedRose {
|
||||
if(isLegendaryItem(item)) {
|
||||
continue;
|
||||
}
|
||||
if (!isEnhancingItem(item)) {
|
||||
if (item.quality > 0) {
|
||||
item.quality = item.quality - 1;
|
||||
}
|
||||
if (isEnhancingItem(item)) {
|
||||
enhanceItem(item);
|
||||
} else {
|
||||
changeQualityOfBrieAndBackstagePasses(item);
|
||||
degradeItem(item);
|
||||
}
|
||||
|
||||
updateSellInValue(item);
|
||||
@ -30,19 +28,24 @@ class GildedRose {
|
||||
if (item.sellIn < 0) {
|
||||
if (!item.name.equals("Aged Brie")) {
|
||||
if (!item.name.equals(BACKSTAGE_PASSES)) {
|
||||
if (item.quality > 0) {
|
||||
item.quality = item.quality - 1;
|
||||
}
|
||||
degradeItem(item);
|
||||
} else {
|
||||
item.quality = 0;
|
||||
}
|
||||
} else if (item.quality < 50) {
|
||||
item.quality = item.quality + 1;
|
||||
} else {
|
||||
item.quality = Integer.min(item.quality + 1,50);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param item
|
||||
*/
|
||||
private void degradeItem(Item item) {
|
||||
item.quality = Integer.max(0, item.quality - 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param item
|
||||
* @return
|
||||
@ -62,7 +65,7 @@ class GildedRose {
|
||||
/**
|
||||
* @param item
|
||||
*/
|
||||
private void changeQualityOfBrieAndBackstagePasses(Item item) {
|
||||
private void enhanceItem(Item item) {
|
||||
if (item.quality < 50) {
|
||||
item.quality = item.quality + 1;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user