GildedRose-Refactoring-Kata/c-check/test_normal.c
2017-03-10 21:39:08 -05:00

58 lines
1.1 KiB
C

#include <check.h>
#include "GildedRose.h"
#define NORMAL_ITEM "Elixer of Mongoose"
START_TEST(normalitem_whenSellInPositive_decreasesQualityByOne)
{
Item items[1];
init_item(items, NORMAL_ITEM, 10, 15);
update_quality(items, 1);
ck_assert_int_eq(14, items[0].quality);
}
END_TEST
START_TEST(normalitem_whenSellIsZero_decreasesQualityByTwo)
{
Item items[1];
init_item(items, NORMAL_ITEM, 0, 15);
update_quality(items, 1);
ck_assert_int_eq(13, items[0].quality);
}
END_TEST
START_TEST(normalitem_whenQualityZero_doesNotDecrease)
{
Item items[1];
init_item(items, NORMAL_ITEM, 10, 0);
update_quality(items, 1);
ck_assert_int_eq(0, items[0].quality);
}
END_TEST
TCase *tcase_rose(void)
{
TCase *tc;
tc = tcase_create("normal-items");
tcase_add_test(tc, normalitem_whenSellInPositive_decreasesQualityByOne);
tcase_add_test(tc, normalitem_whenSellIsZero_decreasesQualityByTwo);
tcase_add_test(tc, normalitem_whenQualityZero_doesNotDecrease);
return tc;
}
Suite *suite_normal(void)
{
Suite *s;
s = suite_create("characterization-tests");
suite_add_tcase(s, tcase_rose());
return s;
}