Tests: splitte Tests

This commit is contained in:
2025-09-03 16:56:17 +02:00
parent c3c4fe0864
commit 0dce4116ca
3 changed files with 57 additions and 43 deletions
+2 -43
View File
@@ -2,28 +2,7 @@ import unittest
from MechFabrik import MechFabrik
from MechFabrik.bauteile import InnerStructure, Gyroskope, AreaNames, Area, Cockpit, Item, ItemTypes, Reaktor, Mech
INNER_ARMOR = {
AreaNames.HEAD: 3,
AreaNames.MIDDLE_TORSO: 6,
AreaNames.LEFT_TORSO: 5,
AreaNames.RIGHT_TORSO: 5,
AreaNames.LEFT_ARM: 3,
AreaNames.RIGHT_ARM: 3,
AreaNames.LEFT_LEG: 4,
AreaNames.RIGHT_LEG: 4,
}
OUTER_ARMOR = {
AreaNames.HEAD: 6,
AreaNames.MIDDLE_TORSO: 9,
AreaNames.LEFT_TORSO: 8,
AreaNames.RIGHT_TORSO: 8,
AreaNames.LEFT_ARM: 5,
AreaNames.RIGHT_ARM: 5,
AreaNames.LEFT_LEG: 7,
AreaNames.RIGHT_LEG: 7,
}
from test_mech import AbstractTestMechAmor, INNER_ARMOR, OUTER_ARMOR
class TestMechBau(unittest.TestCase):
@@ -166,30 +145,10 @@ class TestMechBau(unittest.TestCase):
self.assertEqual(area.items[key].type, item_type)
class TextMechAmor(unittest.TestCase):
def setUp(self):
fabrik = MechFabrik('Heuschrecke', 20.0, 8)
fabrik.set_head_armor(OUTER_ARMOR[AreaNames.HEAD])
fabrik.set_middle_torso_armor(OUTER_ARMOR[AreaNames.MIDDLE_TORSO])
fabrik.set_side_torso_armor(OUTER_ARMOR[AreaNames.LEFT_TORSO])
fabrik.set_arm_armor(OUTER_ARMOR[AreaNames.LEFT_ARM])
fabrik.set_leg_armor(OUTER_ARMOR[AreaNames.LEFT_LEG])
self.mech = fabrik.auslieferung()
class TestMechAmor(AbstractTestMechAmor):
def test_build(self):
for area_name in AreaNames:
area = self.mech.inner_structure.areas.get(area_name)
should_outer_armor = OUTER_ARMOR[area_name]
self.assertEqual(should_outer_armor, area.armor)
def test_process(self):
for area_name in AreaNames:
self.mech.strike(area_name, OUTER_ARMOR[area_name] - 3)
self.assertEqual(3, self.mech.inner_structure.areas.get(area_name).armor)
self.mech.strike(area_name, 4)
self.assertEqual(0, self.mech.inner_structure.areas.get(area_name).armor)
self.assertEqual(INNER_ARMOR[area_name] - 1, self.mech.inner_structure.areas.get(area_name).inner_armor)