Unkwon Check

This commit is contained in:
piperfe 2020-07-29 18:22:07 -04:00
parent 3aa58d892d
commit 82a70cf8e1
2 changed files with 53 additions and 28 deletions

View File

@ -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");
}
}

View File

@ -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);
}
}