mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 14:31:28 +00:00
Unkwon Check
This commit is contained in:
parent
3aa58d892d
commit
82a70cf8e1
@ -9,11 +9,23 @@ class GildedRose {
|
||||
|
||||
public void updateQuality() {
|
||||
for (int i = 0; i < items.length; i++) {
|
||||
if(isUnknown(items[i].name)){
|
||||
|
||||
if (items[i].quality > 0) {
|
||||
items[i].quality = items[i].quality - 1;
|
||||
}
|
||||
|
||||
if (items[i].sellIn < 0 && items[i].quality > 0) {
|
||||
items[i].quality = items[i].quality - 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!items[i].name.equals("Aged Brie")
|
||||
&& !items[i].name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
||||
if (items[i].quality > 0) {
|
||||
if (!items[i].name.equals("Sulfuras, Hand of Ragnaros")) {
|
||||
items[i].quality = items[i].quality - 1;
|
||||
//items[i].quality = items[i].quality - 1;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@ -45,7 +57,7 @@ class GildedRose {
|
||||
if (!items[i].name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
||||
if (items[i].quality > 0) {
|
||||
if (!items[i].name.equals("Sulfuras, Hand of Ragnaros")) {
|
||||
items[i].quality = items[i].quality - 1;
|
||||
// items[i].quality = items[i].quality - 1;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@ -59,4 +71,10 @@ class GildedRose {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isUnknown(String name) {
|
||||
return !name.equals("Aged Brie")
|
||||
&& !name.equals("Backstage passes to a TAFKAL80ETC concert")
|
||||
&& !name.equals("Sulfuras, Hand of Ragnaros");
|
||||
}
|
||||
}
|
||||
@ -9,30 +9,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
class GildedRoseShould {
|
||||
|
||||
|
||||
@Test
|
||||
void when_item_name_is_not_AgedBrie_and_not_Backstage_and_not_Sulfuras_and_quality_is_0_then_should_decrease_sellIn_and_maintains_quality() {
|
||||
Item[] items = {new Item("NOT Sulfuras, Hand of Ragnaros", 10, 0)};
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
|
||||
gildedRose.updateQuality();
|
||||
|
||||
assertEquals(9, gildedRose.items[0].sellIn);
|
||||
assertEquals(0, gildedRose.items[0].quality);
|
||||
}
|
||||
// unknown CHECK
|
||||
// sulfuras
|
||||
|
||||
@Test
|
||||
void when_item_name_is_not_AgedBrie_and_not_Backstage_and_not_Sulfuras_and_quality_is_greather_than_0_then_should_decrease_quality_and_sellIn_in_1() {
|
||||
Item[] items = {new Item("NOT Sulfuras, Hand of Ragnaros", 10, 10)};
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
|
||||
gildedRose.updateQuality();
|
||||
|
||||
assertEquals(9, gildedRose.items[0].sellIn);
|
||||
assertEquals(9, gildedRose.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void when_item_name_is_AgedBrie_and_quality_is_less_than_50_then_should_decrease_sellIn_and_increase_quality_in_1() {
|
||||
void when_item_name_is_AgedBrie_and_quality_is_lt_50_then_should_decrease_sellIn_and_increase_quality_in_1() {
|
||||
Item[] items = {new Item("Aged Brie", 10, 40)};
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
|
||||
@ -43,7 +24,7 @@ class GildedRoseShould {
|
||||
}
|
||||
|
||||
@Test
|
||||
void when_item_is_Backstage_and_sellIn_is_less_than_6_and_quality_is_less_than_48_then_should_increase_in_3_quality_and_decrease_sellIn_in_1() {
|
||||
void when_item_is_Backstage_and_sellIn_is_lt_6_and_quality_is_lt_48_then_should_increase_in_3_quality_and_decrease_sellIn_in_1() {
|
||||
Item[] items = {new Item("Backstage passes to a TAFKAL80ETC concert", 5, 47)};
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
|
||||
@ -54,7 +35,7 @@ class GildedRoseShould {
|
||||
}
|
||||
|
||||
@Test
|
||||
void when_item_is_AgedBrie_and_quality_is_less_than_49_and_sellin_is_less_than_0_then_quality_should_increase_in_1_and_decrease_sellIn_in_1(){
|
||||
void when_item_is_AgedBrie_and_quality_is_lt_49_and_sellin_is_lt_0_then_quality_should_increase_in_1_and_decrease_sellIn_in_1(){
|
||||
Item [] items = {new Item("Aged Brie",-1, 48)};
|
||||
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
@ -67,7 +48,7 @@ class GildedRoseShould {
|
||||
}
|
||||
|
||||
@Test
|
||||
void when_item_is_Backstage_and_sellIn_is_less_than_0_then_quality_should_be_set_in_0_and_decreases_sellIn_in_1(){
|
||||
void when_item_is_Backstage_and_sellIn_is_lt_0_then_quality_should_be_set_in_0_and_decreases_sellIn_in_1(){
|
||||
Item [] items = {new Item("Backstage passes to a TAFKAL80ETC concert",-1,999)};
|
||||
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
@ -78,8 +59,33 @@ class GildedRoseShould {
|
||||
assertEquals(-2, gildedRose.items[0].sellIn);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// unknown CHECK
|
||||
@Test
|
||||
void when_item_is_unknown_and_quality_is_more_than_0_then_should_decrease_quality_in_2_and_decrease_sellIn_in_1(){
|
||||
void when_item_name_is_unknown_and_quality_is_lt_0_and_sellin_is_gt_0_then_should_maintains_quality_and_decrease_sellin_1() {
|
||||
Item[] items = {new Item("Another Different Item", 10, -1)};
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
|
||||
gildedRose.updateQuality();
|
||||
|
||||
assertEquals(9, gildedRose.items[0].sellIn);
|
||||
assertEquals(-1, gildedRose.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void when_item_name_is_unknown_and_quality_is_gt_0_and_sellin_is_gt_0_then_should_decrease_quality_in_1_and_sellIn_in_1() {
|
||||
Item[] items = {new Item("Another Different Item", 10, 10)};
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
|
||||
gildedRose.updateQuality();
|
||||
|
||||
assertEquals(9, gildedRose.items[0].sellIn);
|
||||
assertEquals(9, gildedRose.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void when_item_is_unknown_and_quality_is_gt_0_and_sellin_is_lt_0__then_should_decrease_quality_in_2_and_decrease_sellIn_in_1(){
|
||||
Item [] items = new Item[]{new Item("Another Different Item", -1, 999)};
|
||||
|
||||
GildedRose gildedRose = new GildedRose(items);
|
||||
@ -90,4 +96,5 @@ class GildedRoseShould {
|
||||
assertEquals(-2, gildedRose.items[0].sellIn);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user