mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-17 15:31:27 +00:00
Create class for sulfuras items
This commit is contained in:
parent
0c801848ed
commit
3bd5d5ffdc
21
Java/src/main/java/com/gildedrose/items/SulfurasItem.java
Normal file
21
Java/src/main/java/com/gildedrose/items/SulfurasItem.java
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
package com.gildedrose.items;
|
||||||
|
|
||||||
|
import com.gildedrose.Quality;
|
||||||
|
import com.gildedrose.SellIn;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
public class SulfurasItem extends GildedRoseItem {
|
||||||
|
|
||||||
|
static final Quality DEFAULT_QUALITY = Quality.create(80);
|
||||||
|
|
||||||
|
public SulfurasItem(SellIn sellIn) {
|
||||||
|
super("Sulfuras", sellIn, DEFAULT_QUALITY, Boolean.FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Quality nextQuality(Quality previous) {
|
||||||
|
// being a legendary item, never has to be sold or decreases in Quality
|
||||||
|
return previous.copy();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
package com.gildedrose.items;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
|
import com.gildedrose.Quality;
|
||||||
|
import com.gildedrose.SellIn;
|
||||||
|
import org.junit.jupiter.api.Nested;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
class SulfurasItemTest {
|
||||||
|
private final SulfurasItem item = new SulfurasItem(SellIn.create(0));
|
||||||
|
|
||||||
|
@Nested
|
||||||
|
class nextQuality {
|
||||||
|
@Test
|
||||||
|
void should_never_update_quality() {
|
||||||
|
Quality nextQuality = item.nextQuality(SulfurasItem.DEFAULT_QUALITY);
|
||||||
|
|
||||||
|
assertThat(nextQuality).isEqualTo(SulfurasItem.DEFAULT_QUALITY);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user