expansion of the skillpotion-test

test now checks the effect of the potion on the week-counter of
sufficiently high skills
This commit is contained in:
Philipp Dreher 2015-10-31 19:03:15 +01:00
parent 2f02c27659
commit bebc92f82d

View file

@ -19,13 +19,43 @@ static void test_manacrystal(CuTest *tc) {
static void test_skillpotion(CuTest *tc) { static void test_skillpotion(CuTest *tc) {
unit *u; unit *u;
const struct item_type *itype; const struct item_type *itype;
skill* pSkill = NULL;
int initialWeeks_Entertainment = 0;
int initialWeeks_Stamina = 0;
int initialWeeks_Magic = 0;
test_cleanup(); test_cleanup();
test_create_world(); test_create_world();
u = test_create_unit(test_create_faction(NULL), findregion(0, 0)); u = test_create_unit(test_create_faction(NULL), findregion(0, 0));
itype = test_create_itemtype("skillpotion"); itype = test_create_itemtype("skillpotion");
change_resource(u, itype->rtype, 2); change_resource(u, itype->rtype, 2);
learn_skill(u, SK_ENTERTAINMENT, 1.0);
pSkill = unit_skill(u, SK_ENTERTAINMENT);
sk_set(pSkill, 5);
initialWeeks_Entertainment = pSkill->weeks;
learn_skill(u, SK_STAMINA, 1.0);
pSkill = unit_skill(u, SK_STAMINA);
sk_set(pSkill, 5);
initialWeeks_Stamina = pSkill->weeks;
learn_skill(u, SK_MAGIC, 1.0);
pSkill = unit_skill(u, SK_MAGIC);
sk_set(pSkill, 5);
initialWeeks_Magic = pSkill->weeks;
CuAssertIntEquals(tc, 1, use_skillpotion(u, itype, 1, NULL)); CuAssertIntEquals(tc, 1, use_skillpotion(u, itype, 1, NULL));
pSkill = unit_skill(u, SK_ENTERTAINMENT);
CuAssertIntEquals(tc, initialWeeks_Entertainment - 3, pSkill->weeks);
pSkill = unit_skill(u, SK_STAMINA);
CuAssertIntEquals(tc, initialWeeks_Stamina - 3, pSkill->weeks);
pSkill = unit_skill(u, SK_MAGIC);
CuAssertIntEquals(tc, initialWeeks_Magic - 3, pSkill->weeks);
test_cleanup(); test_cleanup();
} }