void test_spellbooks(CuTest * tc) { spell *sp; spellbook *herp, *derp; spellbook_entry *entry; const char * sname = "herpderp"; test_cleanup(); herp = get_spellbook("herp"); derp = get_spellbook("derp"); CuAssertPtrNotNull(tc, herp); CuAssertPtrNotNull(tc, derp); CuAssertTrue(tc, derp!=herp); CuAssertStrEquals(tc, "herp", herp->name); CuAssertStrEquals(tc, "derp", derp->name); sp = create_spell(sname, 0); spellbook_add(herp, sp, 1); CuAssertPtrNotNull(tc, sp); entry = spellbook_get(herp, sp); CuAssertPtrNotNull(tc, entry); CuAssertPtrEquals(tc, sp, entry->sp); /* CuAssertPtrEquals(tc, 0, spellbook_get(derp, sname)); */ test_cleanup(); herp = get_spellbook("herp"); CuAssertPtrNotNull(tc, herp); /* CuAssertPtrEquals(tc, 0, spellbook_get(herp, sname)); */ }
struct spellbook * faction_get_spellbook(struct faction *f) { if (f->spellbook) { return f->spellbook; } if (f->magiegebiet != M_GRAY) { return get_spellbook(magic_school[f->magiegebiet]); } return NULL; }