mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 22:41:30 +00:00
Test that existing code meets the requirements
This commit is contained in:
parent
5ff91ae88e
commit
e2c4df0d5c
@ -7,11 +7,98 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
class GildedRoseTest {
|
||||
|
||||
@Test
|
||||
void foo() {
|
||||
void givenItem_whenUpdated_thenSellInDecrements() {
|
||||
Item[] items = new Item[] { new Item("foo", 0, 0) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals("fixme", app.items[0].name);
|
||||
assertEquals(-1, app.items[0].sellIn);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenItem_whenUpdated_thenQualityDecrements() {
|
||||
Item[] items = new Item[] { new Item("foo", 10, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(9, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenExpiredItem_whenUpdated_thenQualityDecrementsByTwo() {
|
||||
Item[] items = new Item[] { new Item("foo", 0, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(8, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenItemWithZeroQuality_whenUpdated_thenQualityIsNeverNegative() {
|
||||
Item[] items = new Item[] { new Item("foo", 0, 0) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(0, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAgedBrie_whenUpdated_thenQualityIncrements() {
|
||||
Item[] items = new Item[] { new Item("Aged Brie", 10, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(11, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAgedBrieWithQuality50_whenUpdated_thenQualityRemainsTheSame() {
|
||||
Item[] items = new Item[] { new Item("Aged Brie", 10, 50) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(50, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenLegendaryItem_whenUpdated_thenSellInStaysTheSame() {
|
||||
Item[] items = new Item[] { new Item("Sulfuras, Hand of Ragnaros", 0, 80) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(0, app.items[0].sellIn);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenLegendaryItem_whenUpdated_thenQualityStaysTheSame() {
|
||||
Item[] items = new Item[] { new Item("Sulfuras, Hand of Ragnaros", 0, 80) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(80, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenBackstagePasses_whenUpdated_thenQualityIncrements() {
|
||||
Item[] items = new Item[] { new Item("Backstage passes to a TAFKAL80ETC concert", 20, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(11, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenBackstagePassesWith10DaysToConcert_whenUpdated_thenQualityIncrementsByTwo() {
|
||||
Item[] items = new Item[] { new Item("Backstage passes to a TAFKAL80ETC concert", 10, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(12, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenBackstagePassesWith5DaysToConcert_whenUpdated_thenQualityIncrementsByThree() {
|
||||
Item[] items = new Item[] { new Item("Backstage passes to a TAFKAL80ETC concert", 5, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(13, app.items[0].quality);
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenBackstagePassesAfterTheConcert_whenUpdated_thenQualityIsZero() {
|
||||
Item[] items = new Item[] { new Item("Backstage passes to a TAFKAL80ETC concert", 0, 10) };
|
||||
GildedRose app = new GildedRose(items);
|
||||
app.updateQuality();
|
||||
assertEquals(0, app.items[0].quality);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,19 +2,17 @@ package com.gildedrose;
|
||||
|
||||
public class TexttestFixture {
|
||||
public static void main(String[] args) {
|
||||
System.out.println("OMGHAI!");
|
||||
|
||||
Item[] items = new Item[] {
|
||||
new Item("+5 Dexterity Vest", 10, 20), //
|
||||
new Item("Aged Brie", 2, 0), //
|
||||
new Item("Elixir of the Mongoose", 5, 7), //
|
||||
new Item("Sulfuras, Hand of Ragnaros", 0, 80), //
|
||||
new Item("Sulfuras, Hand of Ragnaros", -1, 80),
|
||||
new Item("Backstage passes to a TAFKAL80ETC concert", 15, 20),
|
||||
new Item("Backstage passes to a TAFKAL80ETC concert", 10, 49),
|
||||
new Item("Backstage passes to a TAFKAL80ETC concert", 5, 49),
|
||||
// this conjured item does not work properly yet
|
||||
new Item("Conjured Mana Cake", 3, 6) };
|
||||
Item[] items = new Item[]{
|
||||
new Item("+5 Dexterity Vest", 10, 20), //
|
||||
new Item("Aged Brie", 2, 0), //
|
||||
new Item("Elixir of the Mongoose", 5, 7), //
|
||||
new Item("Sulfuras, Hand of Ragnaros", 0, 80), //
|
||||
new Item("Sulfuras, Hand of Ragnaros", -1, 80),
|
||||
new Item("Backstage passes to a TAFKAL80ETC concert", 15, 20),
|
||||
new Item("Backstage passes to a TAFKAL80ETC concert", 10, 49),
|
||||
new Item("Backstage passes to a TAFKAL80ETC concert", 5, 49)
|
||||
};
|
||||
|
||||
GildedRose app = new GildedRose(items);
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user