annotate gamelib/tests/test_scene_interactions_cryo.py @ 67:6b0f7364f3bf

Inventory-related game state.
author Jeremy Thurgood <firxen@gmail.com>
date Mon, 23 Aug 2010 20:18:29 +0200
parents 90b32447b239
children e97244b1be30
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
60
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
1 import game_logic_utils
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
2
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
3
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
4 class TestGameLogic(game_logic_utils.GameLogicTestCase):
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
5
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
6 CURRENT_SCENE = 'cryo'
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
7
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
8 def test_cryo_door_closed_hand(self):
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
9 "The door is closed and we touch it with the hand. No change."
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
10
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
11 self.assert_game_data('accessible', True)
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
12 self.assert_game_data('accessible', False, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
13 self.assert_game_data('open', False, 'cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
14
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
15 self.interact_thing('cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
16
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
17 self.assert_game_data('accessible', True)
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
18 self.assert_game_data('accessible', False, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
19 self.assert_game_data('open', False, 'cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
20
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
21 def test_cryo_door_closed_titanium_leg(self):
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
22 "The door is closed and we touch it with the titanium leg. It opens."
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
23
67
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
24 self.state.add_inventory_item('titanium_leg')
60
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
25 self.assert_game_data('accessible', True)
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
26 self.assert_game_data('accessible', False, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
27 self.assert_game_data('open', False, 'cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
28
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
29 self.interact_thing('cryo.door', 'titanium_leg')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
30
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
31 self.assert_game_data('accessible', True)
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
32 self.assert_game_data('accessible', True, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
33 self.assert_game_data('open', True, 'cryo.door')
67
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
34 self.assert_inventory_item('titanium_leg', False)
60
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
35
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
36 def test_cryo_door_open_hand(self):
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
37 "The door is open and we touch it with the hand. No change."
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
38
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
39 self.set_game_data('accessible', True, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
40 self.set_game_data('open', True, 'cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
41
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
42 self.interact_thing('cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
43
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
44 self.assert_game_data('accessible', True)
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
45 self.assert_game_data('accessible', True, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
46 self.assert_game_data('open', True, 'cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
47
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
48 def test_cryo_door_open_titanium_leg(self):
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
49 "The door is open and we touch it with the titanium leg. No change."
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
50
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
51 self.set_game_data('accessible', True, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
52 self.set_game_data('open', True, 'cryo.door')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
53
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
54 self.interact_thing('cryo.door', 'titanium_leg')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
55
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
56 self.assert_game_data('accessible', True)
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
57 self.assert_game_data('accessible', True, scene='bridge')
90b32447b239 Some test refactorage.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
58 self.assert_game_data('open', True, 'cryo.door')
67
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
59
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
60 def test_cryo_unit_alpha_full_hand(self):
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
61 "The cryo unit has the leg in it and we touch it. We get the leg."
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
62
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
63 self.assert_game_data('contains_titanium_leg', True, 'cryo.unit.1')
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
64 self.assert_inventory_item('titanium_leg', False)
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
65
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
66 self.interact_thing('cryo.unit.1')
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
67
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
68 self.assert_game_data('contains_titanium_leg', False, 'cryo.unit.1')
6b0f7364f3bf Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents: 60
diff changeset
69 self.assert_inventory_item('titanium_leg', True)