| 
									
										
										
										
											2024-03-10 01:18:25 -06:00
										 |  |  | from test.bases import WorldTestBase | 
					
						
							|  |  |  | from ...Items import item_factory | 
					
						
							| 
									
										
										
										
											2023-01-19 09:17:16 -06:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class PyramidTestBase(WorldTestBase): | 
					
						
							|  |  |  |     game = "A Link to the Past" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class OpenPyramidTest(PyramidTestBase): | 
					
						
							|  |  |  |     options = { | 
					
						
							|  |  |  |         "open_pyramid": "open" | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def testAccess(self): | 
					
						
							|  |  |  |         self.assertFalse(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							|  |  |  |         self.collect_by_name(["Hammer", "Progressive Glove", "Moon Pearl"]) | 
					
						
							|  |  |  |         self.assertTrue(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class GoalPyramidTest(PyramidTestBase): | 
					
						
							|  |  |  |     options = { | 
					
						
							|  |  |  |         "open_pyramid": "goal" | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def testCrystalsGoalAccess(self): | 
					
						
							| 
									
										
										
										
											2025-04-18 17:41:38 -04:00
										 |  |  |         self.multiworld.worlds[1].options.goal.value = 1  # crystals | 
					
						
							| 
									
										
										
										
											2023-01-19 09:17:16 -06:00
										 |  |  |         self.assertFalse(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							|  |  |  |         self.collect_by_name(["Hammer", "Progressive Glove", "Moon Pearl"]) | 
					
						
							|  |  |  |         self.assertTrue(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def testGanonGoalAccess(self): | 
					
						
							|  |  |  |         self.assertFalse(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							|  |  |  |         self.collect_by_name(["Hammer", "Progressive Glove", "Moon Pearl"]) | 
					
						
							|  |  |  |         self.assertFalse(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							| 
									
										
										
										
											2024-03-10 01:18:25 -06:00
										 |  |  |         self.collect(item_factory("Beat Agahnim 2", self.multiworld.worlds[1])) | 
					
						
							| 
									
										
										
										
											2023-01-19 09:17:16 -06:00
										 |  |  |         self.assertTrue(self.can_reach_entrance("Pyramid Hole")) | 
					
						
							|  |  |  | 
 |