mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-16 15:01:28 +00:00
Create class for normal items
This commit is contained in:
parent
523e656a25
commit
774cc1720b
20
Java/src/main/java/com/gildedrose/items/NormalItem.java
Normal file
20
Java/src/main/java/com/gildedrose/items/NormalItem.java
Normal file
@ -0,0 +1,20 @@
|
||||
package com.gildedrose.items;
|
||||
|
||||
import com.gildedrose.Quality;
|
||||
import com.gildedrose.SellIn;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class NormalItem extends GildedRoseItem {
|
||||
|
||||
public NormalItem(String name, SellIn sellIn, Quality quality, boolean conjured) {
|
||||
super(name, sellIn, quality, conjured);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Quality nextQuality(Quality previous) {
|
||||
Quality nextQuality = previous.copy();
|
||||
nextQuality.decrement();
|
||||
return nextQuality;
|
||||
}
|
||||
}
|
||||
24
Java/src/test/java/com/gildedrose/items/NormalItemTest.java
Normal file
24
Java/src/test/java/com/gildedrose/items/NormalItemTest.java
Normal file
@ -0,0 +1,24 @@
|
||||
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 NormalItemTest {
|
||||
|
||||
@Nested
|
||||
class nextQuality {
|
||||
private final NormalItem item =
|
||||
new NormalItem("+5 Dexterity Vest", SellIn.create(10), Quality.create(1), Boolean.FALSE);
|
||||
|
||||
@Test
|
||||
void should_decrement_quality_in_one() {
|
||||
Quality nextQuality = item.nextQuality(Quality.create(1));
|
||||
|
||||
assertThat(nextQuality.getValue()).isZero();
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user