def test_get_unit_by_name(self): dungeon_model = self._get_dungeon_model() with LogCapture(): logger = logging.getLogger() dungeon = Dungeon(dungeon=dungeon_model, announcer={}, log=logger) unit_name = "quux" unit_generator = UnitGenerator() unit = unit_generator.generate(unit_name=unit_name) dungeon.add_unit(unit) self.assertTrue(len(dungeon.units), 0) # test exact match actual = dungeon.get_unit_by_name(unit_name) self.assertIsInstance(actual, Unit) # test invalid match actual = dungeon.get_unit_by_name("foo") self.assertIsNone(actual) # test case sensitivity actual = dungeon.get_unit_by_name(unit_name.upper()) self.assertIsInstance(actual, Unit) # test startswith actual = dungeon.get_unit_by_name(unit_name[0:1]) self.assertIsInstance(actual, Unit)