tests: verbessere die Verantwortung der Trefferpunkte-Verarbeitung

This commit is contained in:
2026-06-26 20:13:13 +02:00
parent abcde9e8e4
commit 460e0156e8
7 changed files with 281 additions and 109 deletions
+19 -8
View File
@@ -1,7 +1,9 @@
import unittest
from MechFabrik import MechFabrik
from MechFabrik.bauteile import InnerStructure, Gyroskope, AreaNames, Area, Cockpit, Item, ItemTypes, Reaktor, Mech
from MechFabrik.bauteile import InnerStructure, Gyroskope, AreaNames, Area, Cockpit, Item, ItemTypes, OuterAmor, \
Reaktor, Mech, \
Zone, ZoneNames
from test_mech import AbstractTestMechAmor, INNER_ARMOR, OUTER_ARMOR
@@ -20,9 +22,16 @@ class TestMechBau(unittest.TestCase):
for ara_name in AreaNames:
area = mech.inner_structure.areas.get(ara_name)
should_inner_amor = INNER_ARMOR[ara_name]
self.assertEqual(should_inner_amor, area.inner_armor)
self.assertEqual(0, area.armor)
should_amor = INNER_ARMOR[ara_name]
self.assertIsInstance(area, Zone)
self.assertIsInstance(area, Area)
self.assertEqual(should_amor, area.armor)
for zone_name in ZoneNames:
zone = mech.inner_structure.zones.get(zone_name)
self.assertIsInstance(zone, Zone)
self.assertIsInstance(zone, OuterAmor)
self.assertEqual(0, zone.armor)
self.assertIsInstance(mech.inner_structure, InnerStructure)
self.assertIsInstance(mech.inner_structure.tonnage, float)
@@ -44,6 +53,8 @@ class TestMechBau(unittest.TestCase):
middle_torso = self._test_middle_torso(mech)
right_torso = self._test_areas(mech=mech, parent=middle_torso, index=AreaNames.RIGHT_TORSO, children=2)
left_torso = self._test_areas(mech=mech, parent=middle_torso, index=AreaNames.LEFT_TORSO, children=2)
self.assertIsInstance(area_head.parent, Area)
self.assertEqual(middle_torso, area_head.parent)
self.assertCountEqual([right_torso, left_torso], middle_torso.children)
right_arm = self._test_areas(mech=mech, parent=right_torso, index=AreaNames.RIGHT_ARM, children=0)
@@ -148,7 +159,7 @@ class TestMechBau(unittest.TestCase):
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)
for zone_name in ZoneNames:
zone = self.mech.inner_structure.zones.get(zone_name)
should_outer_armor = OUTER_ARMOR[zone_name]
self.assertEqual(should_outer_armor, zone.armor)