Skip to content

Instantly share code, notes, and snippets.

@maaretp
Created August 12, 2018 07:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maaretp/e7dafe02b662ab809fbca2f76f8d4110 to your computer and use it in GitHub Desktop.
Save maaretp/e7dafe02b662ab809fbca2f76f8d4110 to your computer and use it in GitHub Desktop.
package com.gildedrose;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
public class GildedRoseTest {
@Test
public void AfterSellByDateDegradeDouble() {
GildedRose app = checkItem("Any", 0, 10);
assertEquals(8, app.items[0].quality);
}
@Test
public void BeforeSellByDateDegradeSingle() {
GildedRose app = checkItem("Any", 1, 10);
assertEquals(9, app.items[0].quality);
}
@Test
public void QualityOfItemNotNegative() {
GildedRose app = checkItem("Any", 0, 0);
assertEquals(0, app.items[0].quality);
}
@Test
public void BrieImprovesWithAge() {
GildedRose app = checkItem("Aged Brie", 0, 0);
assertEquals(2, app.items[0].quality);
}
@Test
public void QualityOfItemLimit50() {
GildedRose app = checkItem("Aged Brie", 0, 50);
assertEquals(50, app.items[0].quality);
}
@Test
public void LegendarySulfuras() {
GildedRose app = checkItem("Sulfuras, Hand of Ragnaros", 0, 80);
assertEquals(80, app.items[0].quality);
}
@Test
public void BackstageValueLosesAllQualityOnDate() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 0, 10);
assertEquals(0, app.items[0].quality);
}
@Test
public void BackstageValueLongBefore() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 100, 100);
assertEquals(100, app.items[0].quality);
}
@Test
public void BackstageValue10DaysBefore() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 8, 47);
assertEquals(49, app.items[0].quality);
}
@Test
public void BackstageValueTwoDaysBefore() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 2, 40);
assertEquals(43, app.items[0].quality);
}
@Test
public void Backstage1() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 10, 49);
assertEquals(50, app.items[0].quality);
}
@Test
public void Backstage2() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 5, 51);
assertEquals(51, app.items[0].quality);
}
@Test
public void Backstage3() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 13, 51);
assertEquals(51, app.items[0].quality);
}
@Test
public void Backstage4() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 15, 45);
assertEquals(46, app.items[0].quality);
}
@Test
public void Backstage5() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 5, 45);
assertEquals(48, app.items[0].quality);
}
@Test
public void Backstage6() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 5, 49);
assertEquals(50, app.items[0].quality);
}
@Test
public void Backstage7() {
GildedRose app = checkItem("Backstage passes to a TAFKAL80ETC concert", 7, 52);
assertEquals(52, app.items[0].quality);
}
@Test
public void LegendarySulfuras2() {
GildedRose app = checkItem("Sulfuras, Hand of Ragnaros", -1, 80);
assertEquals(80, app.items[0].quality);
}
public GildedRose checkItem(String item, Integer sellin, Integer quality) {
Item[] items = new Item[] { new Item(item, sellin, quality) };
GildedRose app = new GildedRose(items);
app.updateQuality();
return app;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment