def test_insertremove(self): key = Item("key") thing = Item("gizmo") player = Player("julie", "f") with self.assertRaises(ActionRefused): key.remove(None, player) with self.assertRaises(ActionRefused): key.remove(thing, player) with self.assertRaises(ActionRefused): key.insert(None, player) with self.assertRaises(ActionRefused): key.insert(thing, player) key.allow_item_move(player) with self.assertRaises(ActionRefused): key.inventory with self.assertRaises(ActionRefused): key.inventory_size
def test_allowance(self): bag = Container("bag") key = Item("key") player = Player("julie", "f") with self.assertRaises(Exception): bag.insert(None, player) bag.insert(key, player) with self.assertRaises(KeyError): bag.remove(None, player) bag.remove(key, player) bag.allow_item_move(player) with self.assertRaises(ActionRefused): key.insert(bag, player) with self.assertRaises(ActionRefused): key.remove(bag, player) self.assertFalse(key in bag) with self.assertRaises(ActionRefused): bag in key
def test_inventory(self): bag = Container("bag") key = Item("key") thing = Item("gizmo") player = Player("julie", "f") with self.assertRaises(ActionRefused): thing in key # can't check for containment in an Item self.assertFalse(thing in bag) with self.assertRaises(ActionRefused): key.insert(thing, player) # can't add stuf to an Item bag.insert(thing, player) self.assertTrue(thing in bag) self.assertTrue(isinstance(bag.inventory, (set, frozenset))) self.assertEqual(1, bag.inventory_size) with self.assertRaises(AttributeError): bag.inventory_size = 5 with self.assertRaises(AttributeError): bag.inventory = None with self.assertRaises(AttributeError): bag.inventory.add(5)