mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-18 16:01:42 +00:00
Refactor handleBackstagePasses
This commit is contained in:
parent
069708dce9
commit
5f4dffb5e3
@ -82,19 +82,15 @@ class GildedRose {
|
|||||||
|
|
||||||
private static void handleBackstagePasses(Item item) {
|
private static void handleBackstagePasses(Item item) {
|
||||||
// todo: make it so these items can't be initialized with over 50
|
// todo: make it so these items can't be initialized with over 50
|
||||||
if (item.sellIn == 0) {
|
|
||||||
item.quality = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (item.quality == 50) {
|
if (item.quality == 50) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (item.sellIn <= 10) {
|
if (item.sellIn == 0) {
|
||||||
if (item.sellIn <= 5) {
|
item.quality = 0;
|
||||||
item.quality += 3;
|
} else if (item.sellIn <= 5) {
|
||||||
} else {
|
item.quality += 3;
|
||||||
item.quality += 2;
|
} else if (item.sellIn <= 10) {
|
||||||
}
|
item.quality += 2;
|
||||||
}
|
}
|
||||||
item.sellIn -= 1;
|
item.sellIn -= 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -179,7 +179,7 @@ class GildedRoseTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void sellInDateCanBeNegative() {
|
public void sellInDateCanBeNegativeForGenericItems() {
|
||||||
Item[] items = new Item[] { new Item("generic item", 1, 1) };
|
Item[] items = new Item[] { new Item("generic item", 1, 1) };
|
||||||
GildedRose app = new GildedRose(items);
|
GildedRose app = new GildedRose(items);
|
||||||
app.updateQuality();
|
app.updateQuality();
|
||||||
@ -190,6 +190,30 @@ class GildedRoseTest {
|
|||||||
assertEquals(app.items.get(0).sellIn, -2);
|
assertEquals(app.items.get(0).sellIn, -2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void sellInDateCanBeNegativeForAgedBrie() {
|
||||||
|
Item[] items = new Item[] { new Item(GildedRose.AGED_BRIE, 1, 1) };
|
||||||
|
GildedRose app = new GildedRose(items);
|
||||||
|
app.updateQuality();
|
||||||
|
assertEquals(app.items.get(0).sellIn, 0);
|
||||||
|
app.updateQuality();
|
||||||
|
assertEquals(app.items.get(0).sellIn, -1);
|
||||||
|
app.updateQuality();
|
||||||
|
assertEquals(app.items.get(0).sellIn, -2);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void sellInDateCanBeNegativeForBackStagePasses() {
|
||||||
|
Item[] items = new Item[] { new Item(GildedRose.BACKSTAGE_PASSES, 1, 1) };
|
||||||
|
GildedRose app = new GildedRose(items);
|
||||||
|
app.updateQuality();
|
||||||
|
assertEquals(app.items.get(0).sellIn, 0);
|
||||||
|
app.updateQuality();
|
||||||
|
assertEquals(app.items.get(0).sellIn, -1);
|
||||||
|
app.updateQuality();
|
||||||
|
assertEquals(app.items.get(0).sellIn, -2);
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void itUpdatesAllItemsPassedIn() {
|
public void itUpdatesAllItemsPassedIn() {
|
||||||
Item[] items = new Item[] {
|
Item[] items = new Item[] {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user