static void test_shipspeed_shipspeedup(CuTest *tc) { ship *sh; unit *cap, *crew; test_setup(); sh = setup_ship(); setup_crew(sh, 0, &cap, &crew); register_shipcurse(); assert(sh && cap && crew); create_curse(0, &sh->attribs, &ct_shipspeedup, 1, 1, 3, 0); CuAssertIntEquals_Msg(tc, "shipspeedup adds effect to range", sh->type->range + 3, shipspeed(sh, cap)); test_teardown(); }
static void test_shipspeed_nodrift(CuTest *tc) { ship *sh; unit *cap, *crew; test_cleanup(); sh = setup_ship(); setup_crew(sh, 0, &cap, &crew); register_shipcurse(); assert(sh && cap && crew); create_curse(0, &sh->attribs, ct_find("nodrift"), 1, 1, 1, 0); CuAssertIntEquals_Msg(tc, "nodrift adds +1 to range", sh->type->range + 1, shipspeed(sh, cap)); test_cleanup(); }
static void test_shipspeed_stormwind(CuTest *tc) { ship *sh; unit *cap, *crew; test_cleanup(); sh = setup_ship(); setup_crew(sh, 0, &cap, &crew); register_shipcurse(); assert(sh && cap && crew); create_curse(0, &sh->attribs, ct_find("stormwind"), 1, 1, 1, 0); CuAssertIntEquals_Msg(tc, "stormwind doubles ship range", sh->type->range * 2, shipspeed(sh, cap)); test_cleanup(); }
static void test_shipspeed_stormwind(CuTest *tc) { ship *sh; unit *cap, *crew; test_setup(); sh = setup_ship(); setup_crew(sh, 0, &cap, &crew); register_shipcurse(); assert(sh && cap && crew); create_curse(0, &sh->attribs, &ct_stormwind, 1, 1, 1, 0); CuAssertPtrNotNull(tc, sh->attribs); CuAssertIntEquals_Msg(tc, "stormwind doubles ship range", sh->type->range * 2, shipspeed(sh, cap)); a_age(&sh->attribs, sh); CuAssertPtrEquals(tc, NULL, sh->attribs); test_teardown(); }