mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-18 16:01:42 +00:00
🔨 simplify checks and rename functions
This commit is contained in:
parent
ab3f5032dd
commit
349889edd8
@ -12,14 +12,6 @@ public class ItemHandler {
|
|||||||
this.item = item;
|
this.item = item;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean qualityIsHigherThanZero() {
|
|
||||||
return item.quality > 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void makeQualityZero() {
|
|
||||||
item.quality = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void decrementSellInDate() {
|
public void decrementSellInDate() {
|
||||||
item.sellIn--;
|
item.sellIn--;
|
||||||
}
|
}
|
||||||
@ -28,20 +20,24 @@ public class ItemHandler {
|
|||||||
return item.sellIn >= 0;
|
return item.sellIn >= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean sellInLessThan5Days() {
|
public boolean lessThan5DaysToSellIn() {
|
||||||
return item.sellIn >= 0 && item.sellIn <= 5;
|
return item.sellIn >= 0 && item.sellIn <= 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean sellInLessThan10Days() {
|
public boolean lessThan10DaysToSellIn() {
|
||||||
return item.sellIn >= 5 && item.sellIn <= 10;
|
return item.sellIn >= 5 && item.sellIn <= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean sellInMoreThan10Days() {
|
public boolean moreThan10DaysToSellIn() {
|
||||||
return item.sellIn >= 10;
|
return item.sellIn >= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void makeQualityZero() {
|
||||||
|
item.quality = 0;
|
||||||
|
}
|
||||||
|
|
||||||
public void incrementQuality() {
|
public void incrementQuality() {
|
||||||
item.quality++;
|
item.quality = max(item.quality + 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void incrementQualityBy2() {
|
public void incrementQualityBy2() {
|
||||||
@ -53,7 +49,7 @@ public class ItemHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void decrementQuality() {
|
public void decrementQuality() {
|
||||||
item.quality--;
|
item.quality = max(item.quality - 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void decrementQualityBy2() {
|
public void decrementQualityBy2() {
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
package com.gildedrose.items;
|
package com.gildedrose.items;
|
||||||
|
|
||||||
import com.gildedrose.main.Item;
|
|
||||||
import com.gildedrose.item_helpers.ItemHandler;
|
import com.gildedrose.item_helpers.ItemHandler;
|
||||||
import com.gildedrose.item_helpers.ItemType;
|
import com.gildedrose.item_helpers.ItemType;
|
||||||
|
import com.gildedrose.main.Item;
|
||||||
|
|
||||||
public class BackstagePassItem implements ItemType {
|
public class BackstagePassItem implements ItemType {
|
||||||
|
|
||||||
@ -15,11 +15,11 @@ public class BackstagePassItem implements ItemType {
|
|||||||
@Override
|
@Override
|
||||||
public void updateQuality() {
|
public void updateQuality() {
|
||||||
item.decrementSellInDate();
|
item.decrementSellInDate();
|
||||||
if (item.sellInMoreThan10Days()) {
|
if (item.moreThan10DaysToSellIn()) {
|
||||||
item.incrementQuality();
|
item.incrementQuality();
|
||||||
} else if (item.sellInLessThan10Days()) {
|
} else if (item.lessThan10DaysToSellIn()) {
|
||||||
item.incrementQualityBy2();
|
item.incrementQualityBy2();
|
||||||
} else if (item.sellInLessThan5Days()) {
|
} else if (item.lessThan5DaysToSellIn()) {
|
||||||
item.incrementQualityBy3();
|
item.incrementQualityBy3();
|
||||||
} else {
|
} else {
|
||||||
item.makeQualityZero();
|
item.makeQualityZero();
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
package com.gildedrose.items;
|
package com.gildedrose.items;
|
||||||
|
|
||||||
import com.gildedrose.main.Item;
|
|
||||||
import com.gildedrose.item_helpers.ItemHandler;
|
import com.gildedrose.item_helpers.ItemHandler;
|
||||||
import com.gildedrose.item_helpers.ItemType;
|
import com.gildedrose.item_helpers.ItemType;
|
||||||
|
import com.gildedrose.main.Item;
|
||||||
|
|
||||||
public class ConjuredItem implements ItemType {
|
public class ConjuredItem implements ItemType {
|
||||||
|
|
||||||
@ -15,13 +15,11 @@ public class ConjuredItem implements ItemType {
|
|||||||
@Override
|
@Override
|
||||||
public void updateQuality() {
|
public void updateQuality() {
|
||||||
item.decrementSellInDate();
|
item.decrementSellInDate();
|
||||||
if (item.qualityIsHigherThanZero()) {
|
|
||||||
if (item.beforeSellInDate()) {
|
if (item.beforeSellInDate()) {
|
||||||
item.decrementQuality();
|
item.decrementQuality();
|
||||||
} else {
|
} else {
|
||||||
item.decrementQualityBy4();
|
item.decrementQualityBy4();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
package com.gildedrose.items;
|
package com.gildedrose.items;
|
||||||
|
|
||||||
import com.gildedrose.main.Item;
|
|
||||||
import com.gildedrose.item_helpers.ItemHandler;
|
import com.gildedrose.item_helpers.ItemHandler;
|
||||||
import com.gildedrose.item_helpers.ItemType;
|
import com.gildedrose.item_helpers.ItemType;
|
||||||
|
import com.gildedrose.main.Item;
|
||||||
|
|
||||||
public class NormalItem implements ItemType {
|
public class NormalItem implements ItemType {
|
||||||
|
|
||||||
@ -15,13 +15,11 @@ public class NormalItem implements ItemType {
|
|||||||
@Override
|
@Override
|
||||||
public void updateQuality() {
|
public void updateQuality() {
|
||||||
item.decrementSellInDate();
|
item.decrementSellInDate();
|
||||||
if (item.qualityIsHigherThanZero()) {
|
|
||||||
if (item.beforeSellInDate()) {
|
if (item.beforeSellInDate()) {
|
||||||
item.decrementQuality();
|
item.decrementQuality();
|
||||||
} else {
|
} else {
|
||||||
item.decrementQualityBy2();
|
item.decrementQualityBy2();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user