Finish Twitch-combat tutorial

This commit is contained in:
Griatch 2023-05-06 22:42:33 +02:00
parent d2551aaaa7
commit 5b2e9bd5a1
17 changed files with 1273 additions and 49 deletions

View file

@ -51,7 +51,7 @@ class _CombatTestBase(EvenniaTestCase):
self.target.msg = Mock()
class TestEvAdventureCombatHandlerBase(_CombatTestBase):
class TestEvAdventureCombatBaseHandler(_CombatTestBase):
"""
Test the base functionality of the base combat handler.
@ -60,7 +60,7 @@ class TestEvAdventureCombatHandlerBase(_CombatTestBase):
def setUp(self):
"""This also tests the `get_or_create_combathandler` classfunc"""
super().setUp()
self.combathandler = combat_base.EvAdventureCombatHandlerBase.get_or_create_combathandler(
self.combathandler = combat_base.EvAdventureCombatBaseHandler.get_or_create_combathandler(
self.location, key="combathandler"
)
@ -109,7 +109,7 @@ class TestCombatActionsBase(_CombatTestBase):
def setUp(self):
super().setUp()
self.combathandler = combat_base.EvAdventureCombatHandlerBase.get_or_create_combathandler(
self.combathandler = combat_base.EvAdventureCombatBaseHandler.get_or_create_combathandler(
self.location, key="combathandler"
)
# we need to mock all NotImplemented methods
@ -552,11 +552,11 @@ class TestEvAdventureTwitchCombatHandler(EvenniaCommandTestMixin, _CombatTestBas
def test_give_advantage(self):
self.combatant_combathandler.give_advantage(self.combatant, self.target)
self.assertTrue(self.combatant_combathandler.advantages_against[self.target])
self.assertTrue(self.combatant_combathandler.advantage_against[self.target])
def test_give_disadvantage(self):
self.combatant_combathandler.give_disadvantage(self.combatant, self.target)
self.assertTrue(self.combatant_combathandler.disadvantages_against[self.target])
self.assertTrue(self.combatant_combathandler.disadvantage_against[self.target])
@patch("evennia.contrib.tutorials.evadventure.combat_twitch.unrepeat", new=Mock())
@patch("evennia.contrib.tutorials.evadventure.combat_twitch.repeat", new=Mock(return_value=999))

View file

@ -0,0 +1,23 @@
"""
Test NPC classes.
"""
from evennia import create_object
from evennia.utils.test_resources import EvenniaTest
from .. import npcs
class TestNPCBase(EvenniaTest):
def test_npc_base(self):
npc = create_object(
npcs.EvAdventureNPC,
key="TestNPC",
attributes=[("hit_dice", 4), ("armor", 1), ("morale", 9)],
)
self.assertEqual(npc.hp_multiplier, 4)
self.assertEqual(npc.hp, 16)
self.assertEqual(npc.strength, 4)
self.assertEqual(npc.charisma, 4)