26 lines
980 B
Python
26 lines
980 B
Python
import unittest
|
|
from worlds import subnautica
|
|
|
|
|
|
class SubnauticaTest(unittest.TestCase):
|
|
# This is an assumption in the mod side
|
|
scancutoff: int = 33999
|
|
|
|
def testIDRange(self):
|
|
for name, id in subnautica.SubnauticaWorld.location_name_to_id.items():
|
|
with self.subTest(location=name):
|
|
if "Scan" in name:
|
|
self.assertLess(self.scancutoff, id)
|
|
else:
|
|
self.assertGreater(self.scancutoff, id)
|
|
|
|
def testGroupAssociation(self):
|
|
from worlds.subnautica import Items
|
|
for item_id, item_data in Items.item_table.items():
|
|
if item_data.type == Items.ItemType.group:
|
|
with self.subTest(item=item_data.name):
|
|
self.assertIn(item_id, Items.group_items)
|
|
for item_id in Items.group_items:
|
|
with self.subTest(item_id=item_id):
|
|
self.assertEqual(Items.item_table[item_id].type, Items.ItemType.group)
|