39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from typing import Optional
 | |
| 
 | |
| from Fill import distribute_planned
 | |
| from test.general import setup_solo_multiworld
 | |
| from worlds.AutoWorld import call_all
 | |
| from . import LADXTestBase
 | |
| from .. import LinksAwakeningWorld
 | |
| 
 | |
| 
 | |
| class PlandoTest(LADXTestBase):
 | |
|     options = {
 | |
|         "plando_items": [{
 | |
|             "items": {
 | |
|                 "Progressive Sword": 2,
 | |
|             },
 | |
|             "locations": [
 | |
|                 "Shop 200 Item (Mabe Village)",
 | |
|                 "Shop 980 Item (Mabe Village)",
 | |
|             ],
 | |
|         }],
 | |
|     }
 | |
|     
 | |
|     def world_setup(self, seed: Optional[int] = None) -> None:
 | |
|         self.multiworld = setup_solo_multiworld(
 | |
|             LinksAwakeningWorld,
 | |
|             ("generate_early", "create_regions", "create_items", "set_rules", "generate_basic")
 | |
|         )
 | |
|         self.multiworld.plando_items[1] = self.options["plando_items"]
 | |
|         distribute_planned(self.multiworld)
 | |
|         call_all(self.multiworld, "pre_fill")
 | |
|         
 | |
|     def test_planned(self):
 | |
|         """Tests plandoing swords in the shop."""
 | |
|         location_names = ["Shop 200 Item (Mabe Village)", "Shop 980 Item (Mabe Village)"]
 | |
|         locations = [self.multiworld.get_location(loc, 1) for loc in location_names]
 | |
|         for loc in locations:
 | |
|             self.assertEqual("Progressive Sword", loc.item.name)
 | |
|             self.assertFalse(loc.can_reach(self.multiworld.state))
 | 
