mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 14:31:28 +00:00
add tests for items
This commit is contained in:
parent
e2c5826e71
commit
3d90e599d7
@ -2,14 +2,49 @@ package main
|
||||
|
||||
import "testing"
|
||||
|
||||
func Test_Foo(t *testing.T) {
|
||||
var items = []*Item{
|
||||
&Item{"foo", 0, 0},
|
||||
type Expected [2]int
|
||||
|
||||
type ItemTest struct {
|
||||
*Item
|
||||
Expected
|
||||
}
|
||||
|
||||
func GetItemTestsComponents(itemTests []ItemTest) ([]*Item, []Expected) {
|
||||
var items []*Item
|
||||
var expected []Expected
|
||||
|
||||
for _, itemTest := range itemTests {
|
||||
items = append(items, itemTest.Item)
|
||||
expected = append(expected, itemTest.Expected)
|
||||
}
|
||||
|
||||
return items, expected
|
||||
}
|
||||
|
||||
func Test_Items(t *testing.T) {
|
||||
var itemTests = []ItemTest{
|
||||
{&Item{"Aged Brie", 0, 0}, Expected{-1, 2}},
|
||||
{&Item{"Aged Brie", 5, 50}, Expected{4, 50}},
|
||||
{&Item{"Backstage passes to a TAFKAL80ETC concert", 5, 49}, Expected{4, 50}},
|
||||
{&Item{"Backstage passes to a TAFKAL80ETC concert", 0, 49}, Expected{-1, 0}},
|
||||
{&Item{"Backstage passes to a TAFKAL80ETC concert", 4, 4}, Expected{3, 7}},
|
||||
{&Item{"Backstage passes to a TAFKAL80ETC concert", 9, 4}, Expected{8, 6}},
|
||||
{&Item{"Sulfuras, Hand of Ragnaros", 0, 80}, Expected{0, 80}},
|
||||
{&Item{"Conjured Mana Cake", 3, 6}, Expected{2, 5}},
|
||||
{&Item{"Acme Dynamite", 3, 6}, Expected{2, 5}},
|
||||
{&Item{"Acme Dynamite", 0, 6}, Expected{-1, 4}},
|
||||
{&Item{"Acme Dynamite", 0, 0}, Expected{-1, 0}},
|
||||
}
|
||||
|
||||
items, expected := GetItemTestsComponents(itemTests)
|
||||
|
||||
UpdateQuality(items)
|
||||
|
||||
if items[0].name != "fixme" {
|
||||
t.Errorf("Name: Expected %s but got %s ", "fixme", items[0].name)
|
||||
for i, item := range items {
|
||||
actual := [2]int{item.sellIn, item.quality}
|
||||
if actual != expected[i] {
|
||||
t.Errorf("Expected %+v but got %+v", expected[i], actual)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user