Mercurial > boomslang
comparison gamelib/tests/test_walkthrough.py @ 355:bfb6c682b4fb
Updated walkthrough test as far as completed environmental puzzle.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Sat, 28 Aug 2010 16:34:35 +0200 |
parents | ca0c2875ad8f |
children | fdf3a6dd476b |
comparison
equal
deleted
inserted
replaced
354:09efb8b7c132 | 355:bfb6c682b4fb |
---|---|
29 self.interact_thing('cryo.door') | 29 self.interact_thing('cryo.door') |
30 self.assert_game_data('door', 'ajar', 'cryo.door') | 30 self.assert_game_data('door', 'ajar', 'cryo.door') |
31 | 31 |
32 # Get the titanium leg. | 32 # Get the titanium leg. |
33 self.interact_thing('cryo.unit.1') | 33 self.interact_thing('cryo.unit.1') |
34 self.assertEquals('cryo_detail', self.state.current_detail.name) | 34 self.assert_current_detail('cryo_detail') |
35 self.assert_detail_thing('cryo.titanium_leg') | 35 self.assert_detail_thing('cryo.titanium_leg') |
36 self.interact_thing('cryo.titanium_leg') | 36 self.interact_thing('cryo.titanium_leg') |
37 self.assert_detail_thing('cryo.titanium_leg', False) | 37 self.assert_detail_thing('cryo.titanium_leg', False) |
38 self.assert_inventory_item('titanium_leg') | 38 self.assert_inventory_item('titanium_leg') |
39 self.close_detail() | 39 self.close_detail() |
48 | 48 |
49 # Get the cans. | 49 # Get the cans. |
50 self.assert_game_data('cans_available', 3, 'mess.cans') | 50 self.assert_game_data('cans_available', 3, 'mess.cans') |
51 self.interact_thing('mess.cans') | 51 self.interact_thing('mess.cans') |
52 self.assert_inventory_item('full_can.0') | 52 self.assert_inventory_item('full_can.0') |
53 self.assert_game_data('cans_available', 2, 'mess.cans') | |
53 self.interact_thing('mess.cans') | 54 self.interact_thing('mess.cans') |
54 self.assert_inventory_item('full_can.1') | 55 self.assert_inventory_item('full_can.1') |
56 self.assert_game_data('cans_available', 1, 'mess.cans') | |
55 self.interact_thing('mess.cans') | 57 self.interact_thing('mess.cans') |
56 self.assert_inventory_item('full_can.2') | 58 self.assert_inventory_item('full_can.2') |
57 self.assert_game_data('cans_available', 0, 'mess.cans') | 59 self.assert_scene_thing('mess.cans', False) |
58 | 60 |
59 # Bash one of the cans. | 61 # Bash one of the cans. |
60 self.assert_item_exists('dented_can.0', False) | 62 self.assert_item_exists('dented_can.0', False) |
61 self.interact_item('full_can.1', 'titanium_leg') | 63 self.interact_item('full_can.1', 'titanium_leg') |
62 self.assert_inventory_item('dented_can.0') | 64 self.assert_inventory_item('dented_can.0') |
75 | 77 |
76 # Chop up some pipes. | 78 # Chop up some pipes. |
77 self.assert_game_data('fixed', True, 'cryo.pipe.left') | 79 self.assert_game_data('fixed', True, 'cryo.pipe.left') |
78 self.interact_thing('cryo.pipe.left', 'machete') | 80 self.interact_thing('cryo.pipe.left', 'machete') |
79 self.assert_game_data('fixed', False, 'cryo.pipe.left') | 81 self.assert_game_data('fixed', False, 'cryo.pipe.left') |
80 self.assert_inventory_item('cryo_pipe.0') | 82 self.assert_inventory_item('tube_fragment.0') |
81 | 83 |
82 self.assert_game_data('fixed', True, 'cryo.pipe.right') | 84 self.assert_game_data('fixed', True, 'cryo.pipe.right.top') |
83 self.interact_thing('cryo.pipe.right', 'machete') | 85 self.interact_thing('cryo.pipe.right.top', 'machete') |
84 self.assert_game_data('fixed', False, 'cryo.pipe.right') | 86 self.assert_game_data('fixed', False, 'cryo.pipe.right.top') |
85 self.assert_inventory_item('cryo_pipe.1') | 87 self.assert_inventory_item('tube_fragment.1') |
88 | |
89 self.assert_game_data('fixed', True, 'cryo.pipe.right.bottom') | |
90 self.interact_thing('cryo.pipe.right.bottom', 'machete') | |
91 self.assert_game_data('fixed', False, 'cryo.pipe.right.bottom') | |
92 self.assert_inventory_item('tube_fragment.2') | |
86 | 93 |
87 # Go to the mess. | 94 # Go to the mess. |
88 self.move_to('mess') | 95 self.move_to('mess') |
89 | 96 |
90 # Clear the broccoli. | 97 # Clear the broccoli. |
91 self.assert_game_data('status', 'blocked', 'mess.tubes') | 98 self.assert_game_data('status', 'blocked', 'mess.tubes') |
92 self.interact_thing('mess.tubes', 'machete') | 99 self.interact_thing('mess.tubes', 'machete') |
93 self.assert_game_data('status', 'broken', 'mess.tubes') | 100 self.assert_game_data('status', 'broken', 'mess.tubes') |
94 | 101 |
102 # Go to the bridge. | |
103 self.move_to('bridge') | |
104 | |
105 # Get the stethoscope. | |
106 self.interact_thing('bridge.stethoscope') | |
107 self.assert_inventory_item('stethoscope') | |
108 self.assert_scene_thing('bridge.stethoscope', False) | |
109 | |
110 # Get the superconductor. | |
111 self.interact_thing('bridge.massagechair_base') | |
112 self.assert_current_detail('chair_detail') | |
113 self.interact_thing('bridge.superconductor') | |
114 self.assert_inventory_item('superconductor') | |
115 self.assert_detail_thing('bridge.superconductor', False) | |
116 self.close_detail() | |
117 | |
118 # Go to the crew quarters. | |
119 self.move_to('crew_quarters') | |
120 | |
121 # Get the fishbowl. | |
122 self.assert_game_data('has_bowl', True, 'crew.fishbowl') | |
123 self.interact_thing('crew.fishbowl') | |
124 self.assert_game_data('has_bowl', False, 'crew.fishbowl') | |
125 self.assert_inventory_item('fishbowl') | |
126 | |
127 # Crack the safe. | |
128 self.assert_game_data('is_cracked', False, 'crew.safe') | |
129 self.interact_thing('crew.safe', 'stethoscope') | |
130 self.assert_game_data('is_cracked', True, 'crew.safe') | |
131 | |
132 # Get the duct tape. | |
133 self.assert_game_data('has_tape', True, 'crew.safe') | |
134 self.interact_thing('crew.safe') | |
135 self.assert_game_data('has_tape', False, 'crew.safe') | |
136 self.assert_inventory_item('duct_tape') | |
137 | |
138 # Make the helmet. | |
139 self.interact_item('fishbowl', 'duct_tape') | |
140 self.assert_inventory_item('helmet') | |
141 self.assert_inventory_item('fishbowl', False) | |
142 | |
143 # Go to the engine room. | |
144 self.move_to('engine') | |
145 | |
146 # Get the can opener. | |
147 self.interact_thing('engine.canopener') | |
148 self.assert_inventory_item('canopener') | |
149 self.assert_scene_thing('engine.canopener', False) | |
150 | |
151 # Open the cans. | |
152 self.interact_item('full_can.2', 'canopener') | |
153 self.assert_inventory_item('full_can.2', False) | |
154 self.assert_inventory_item('empty_can.0') | |
155 | |
156 self.interact_item('full_can.0', 'canopener') | |
157 self.assert_inventory_item('full_can.0', False) | |
158 self.assert_inventory_item('empty_can.1') | |
159 | |
160 self.interact_item('dented_can.0', 'canopener') | |
161 self.assert_inventory_item('dented_can.0', False) | |
162 self.assert_inventory_item('empty_can.2') | |
163 | |
164 # Go to the machine room. | |
165 self.move_to('machine') | |
166 | |
167 # Weld pipes and cans. | |
168 self.assert_game_data('contents', set(), 'machine.welder.slot') | |
169 self.interact_thing('machine.welder.slot', 'tube_fragment.0') | |
170 self.assert_inventory_item('tube_fragment.0', False) | |
171 self.assert_game_data('contents', set(['tube']), 'machine.welder.slot') | |
172 self.interact_thing('machine.welder.slot', 'empty_can.1') | |
173 self.assert_inventory_item('empty_can.1', False) | |
174 self.assert_game_data('contents', set(['tube', 'can']), 'machine.welder.slot') | |
175 self.interact_thing('machine.welder.button') | |
176 self.assert_game_data('contents', set(), 'machine.welder.slot') | |
177 self.assert_inventory_item('cryo_pipes_one') | |
178 | |
179 self.assert_game_data('contents', set(), 'machine.welder.slot') | |
180 self.interact_thing('machine.welder.slot', 'tube_fragment.2') | |
181 self.assert_inventory_item('tube_fragment.2', False) | |
182 self.assert_game_data('contents', set(['tube']), 'machine.welder.slot') | |
183 self.interact_thing('machine.welder.slot', 'empty_can.2') | |
184 self.assert_inventory_item('empty_can.2', False) | |
185 self.assert_game_data('contents', set(['tube', 'can']), 'machine.welder.slot') | |
186 self.interact_thing('machine.welder.button') | |
187 self.assert_game_data('contents', set(), 'machine.welder.slot') | |
188 self.assert_inventory_item('cryo_pipes_one', False) | |
189 self.assert_inventory_item('cryo_pipes_two') | |
190 | |
191 self.assert_game_data('contents', set(), 'machine.welder.slot') | |
192 self.interact_thing('machine.welder.slot', 'tube_fragment.1') | |
193 self.assert_inventory_item('tube_fragment.1', False) | |
194 self.assert_game_data('contents', set(['tube']), 'machine.welder.slot') | |
195 self.interact_thing('machine.welder.slot', 'empty_can.0') | |
196 self.assert_inventory_item('empty_can.0', False) | |
197 self.assert_game_data('contents', set(['tube', 'can']), 'machine.welder.slot') | |
198 self.interact_thing('machine.welder.button') | |
199 self.assert_game_data('contents', set(), 'machine.welder.slot') | |
200 self.assert_inventory_item('cryo_pipes_two', False) | |
201 self.assert_inventory_item('cryo_pipes_three') | |
202 | |
203 # Go to the mess. | |
204 self.move_to('mess') | |
205 | |
206 # Replace the tubes. | |
207 self.interact_thing('mess.tubes', 'cryo_pipes_three') | |
208 self.assert_inventory_item('cryo_pipes_three', False) | |
209 self.assert_game_data('status', 'replaced', 'mess.tubes') | |
210 | |
211 # Tape up the tubes. | |
212 self.interact_thing('mess.tubes', 'duct_tape') | |
213 self.assert_game_data('status', 'fixed', 'mess.tubes') | |
214 |