def test_spellcasting(self): char = Character(name='Multiclass', classes=['wizard', 'fighter'], levels=[5, 4]) self.assertEqual(len(char.spellcasting_classes), 1) char = Character(name='Multiclass', classes=['wizard', 'fighter'], subclasses=[None, 'Eldritch Knight'], levels=[5, 4]) self.assertEqual(len(char.spellcasting_classes), 2) # equivalent spellcasting level: 6 self.assertEqual(char.spell_slots(spell_level=1), 4) self.assertEqual(char.spell_slots(spell_level=2), 3) self.assertEqual(char.spell_slots(spell_level=3), 3) self.assertEqual(char.spell_slots(spell_level=4), 0)
def test_spellcasting(self): char = Character(name="Multiclass", classes=["wizard", "fighter"], levels=[5, 4]) self.assertEqual(len(char.spellcasting_classes), 1) char = Character( name="Multiclass", classes=["wizard", "fighter"], subclasses=[None, "Eldritch Knight"], levels=[5, 4], ) self.assertEqual(len(char.spellcasting_classes), 2) # equivalent spellcasting level: 6 self.assertEqual(char.spell_slots(spell_level=1), 4) self.assertEqual(char.spell_slots(spell_level=2), 3) self.assertEqual(char.spell_slots(spell_level=3), 3) self.assertEqual(char.spell_slots(spell_level=4), 0)