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"
|
import "testing"
|
||||||
|
|
||||||
func Test_Foo(t *testing.T) {
|
type Expected [2]int
|
||||||
var items = []*Item{
|
|
||||||
&Item{"foo", 0, 0},
|
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)
|
UpdateQuality(items)
|
||||||
|
|
||||||
if items[0].name != "fixme" {
|
for i, item := range items {
|
||||||
t.Errorf("Name: Expected %s but got %s ", "fixme", items[0].name)
|
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