is outdated

This commit is contained in:
Ludwig V 2021-11-11 16:48:00 +01:00
parent fe88e7068e
commit c5c09385d4

View File

@ -23,8 +23,9 @@ export class GildedRose {
} }
// est périmité ? // est périmité ?
// should increase quality ? isOutdated(item: Item) {
return item.sellIn < 0
}
shouldDecreaseQuality(item: Item) { shouldDecreaseQuality(item: Item) {
return ( return (
item.name != 'Aged Brie' && item.name != 'Aged Brie' &&
@ -53,19 +54,19 @@ export class GildedRose {
const currentProductName = item.name const currentProductName = item.name
// PART 1 // PART 1
if (this.shouldDecreaseQuality(item)) { if (this.shouldDecreaseQuality(item)) {
item.quality = item.quality - 1 item.quality = this.decrementQuality(item)
} else { } else {
if (item.quality < Item.maxQualityThreshold) { if (item.quality < Item.maxQualityThreshold) {
item.quality = item.quality + 1 item.quality = this.incrementQuality(item)
if (currentProductName == 'Backstage passes to a TAFKAL80ETC concert') { if (currentProductName == 'Backstage passes to a TAFKAL80ETC concert') {
if (item.sellIn < 11) { if (item.sellIn < 11) {
if (item.quality < Item.maxQualityThreshold) { if (item.quality < Item.maxQualityThreshold) {
item.quality = item.quality + 1 item.quality = this.incrementQuality(item)
} }
} }
if (item.sellIn < 6) { if (item.sellIn < 6) {
if (item.quality < Item.maxQualityThreshold) { if (item.quality < Item.maxQualityThreshold) {
item.quality = item.quality + 1 item.quality = this.incrementQuality(item)
} }
} }
} }
@ -74,18 +75,18 @@ export class GildedRose {
// part 2 // part 2
item.sellIn = item.sellIn - 1 item.sellIn = item.sellIn - 1
// part 3 // part 3
if (item.sellIn < 0) { if (this.isOutdated(item)) {
if (currentProductName != 'Aged Brie') { if (currentProductName != 'Aged Brie') {
if (currentProductName != 'Backstage passes to a TAFKAL80ETC concert') { if (currentProductName != 'Backstage passes to a TAFKAL80ETC concert') {
if (item.quality > Item.minQualityThreshold) { if (item.quality > Item.minQualityThreshold) {
item.quality = item.quality - 1 item.quality = this.decrementQuality(item)
} }
} else { } else {
item.quality = item.quality - item.quality item.quality = item.quality - item.quality
} }
} else { } else {
if (item.quality < Item.maxQualityThreshold) { if (item.quality < Item.maxQualityThreshold) {
item.quality = item.quality + 1 item.quality = this.incrementQuality(item)
} }
} }
} }