71 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			71 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | from . import TunicTestBase | ||
|  | from .. import options | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestAccess(TunicTestBase): | ||
|  |     # test whether you can get into the temple without laurels | ||
|  |     def test_temple_access(self): | ||
|  |         self.collect_all_but(["Hero's Laurels", "Lantern"]) | ||
|  |         self.assertFalse(self.can_reach_location("Sealed Temple - Page Pickup")) | ||
|  |         self.collect_by_name(["Lantern"]) | ||
|  |         self.assertTrue(self.can_reach_location("Sealed Temple - Page Pickup")) | ||
|  | 
 | ||
|  |     # test that the wells function properly. Since fairies is written the same way, that should succeed too | ||
|  |     def test_wells(self): | ||
|  |         self.collect_all_but(["Golden Coin"]) | ||
|  |         self.assertFalse(self.can_reach_location("Coins in the Well - 3 Coins")) | ||
|  |         self.collect_by_name(["Golden Coin"]) | ||
|  |         self.assertTrue(self.can_reach_location("Coins in the Well - 3 Coins")) | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestStandardShuffle(TunicTestBase): | ||
|  |     options = {options.AbilityShuffling.internal_name: options.AbilityShuffling.option_true} | ||
|  | 
 | ||
|  |     # test that you need to get holy cross to open the hc door in overworld | ||
|  |     def test_hc_door(self): | ||
|  |         self.assertFalse(self.can_reach_location("Fountain Cross Door - Page Pickup")) | ||
|  |         self.collect_by_name("Pages 42-43 (Holy Cross)") | ||
|  |         self.assertTrue(self.can_reach_location("Fountain Cross Door - Page Pickup")) | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestHexQuestShuffle(TunicTestBase): | ||
|  |     options = {options.HexagonQuest.internal_name: options.HexagonQuest.option_true, | ||
|  |                options.AbilityShuffling.internal_name: options.AbilityShuffling.option_true} | ||
|  | 
 | ||
|  |     # test that you need the gold questagons to open the hc door in overworld | ||
|  |     def test_hc_door_hex_shuffle(self): | ||
|  |         self.assertFalse(self.can_reach_location("Fountain Cross Door - Page Pickup")) | ||
|  |         self.collect_by_name("Gold Questagon") | ||
|  |         self.assertTrue(self.can_reach_location("Fountain Cross Door - Page Pickup")) | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestHexQuestNoShuffle(TunicTestBase): | ||
|  |     options = {options.HexagonQuest.internal_name: options.HexagonQuest.option_true, | ||
|  |                options.AbilityShuffling.internal_name: options.AbilityShuffling.option_false} | ||
|  | 
 | ||
|  |     # test that you can get the item behind the overworld hc door with nothing and no ability shuffle | ||
|  |     def test_hc_door_no_shuffle(self): | ||
|  |         self.assertTrue(self.can_reach_location("Fountain Cross Door - Page Pickup")) | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestNormalGoal(TunicTestBase): | ||
|  |     options = {options.HexagonQuest.internal_name: options.HexagonQuest.option_false} | ||
|  | 
 | ||
|  |     # test that you need the three colored hexes to reach the Heir in standard | ||
|  |     def test_normal_goal(self): | ||
|  |         location = ["The Heir"] | ||
|  |         items = [["Red Questagon", "Blue Questagon", "Green Questagon"]] | ||
|  |         self.assertAccessDependency(location, items) | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestER(TunicTestBase): | ||
|  |     options = {options.EntranceRando.internal_name: options.EntranceRando.option_true, | ||
|  |                options.AbilityShuffling.internal_name: options.AbilityShuffling.option_true, | ||
|  |                options.HexagonQuest.internal_name: options.HexagonQuest.option_false} | ||
|  | 
 | ||
|  |     def test_overworld_hc_chest(self): | ||
|  |         # test to see that static connections are working properly -- this chest requires holy cross and is in Overworld | ||
|  |         self.assertFalse(self.can_reach_location("Overworld - [Southwest] Flowers Holy Cross")) | ||
|  |         self.collect_by_name(["Pages 42-43 (Holy Cross)"]) | ||
|  |         self.assertTrue(self.can_reach_location("Overworld - [Southwest] Flowers Holy Cross")) |