Files
Grinch-AP/worlds/witness/test/test_roll_other_options.py
NewSoupVi f99ee77325 The Witness: Add some unit tests (#3328)
* Add hidden early symbol item option, make some unit tests

* Add early symbol item false to the arrows test

* I guess it's not an issue

* more tests

* assertEqual

* cleanup

* add minimum symbols test for all 3 modes

* Formatting

* Add more minimal beatability tests

* one more for the road

* I HATE THIS AAAAAAAAAAAHHHHHHHHHHH WHY DID WE GO WITH OPTIONS

* loiaqeäsdhgalikSDGHjasDÖKHGASKLDÖGHJASKLJGHJSAÖkfaöslifjasöfASGJÖASDLFGJ'sklgösLGIKsdhJLGÖsdfjälghklDASFJghjladshfgjasdfälkjghasdöLfghasd-kjgjASDLÖGHAESKDLJGJÖsdaLGJHsadöKGjFDSLAkgjölSÄDghbASDFKGjasdLJGhjLÖSDGHLJASKDkgjldafjghjÖLADSFghäasdökgjäsadjlgkjsadkLHGsaDÖLGSADGÖLwSdlgkJLwDSFÄLHBJsaöfdkHweaFGIoeWjvlkdösmVJÄlsafdJKhvjdsJHFGLsdaövhWDsköLV-ksdFJHGVöSEKD

* fix imports (within apworld needs to be relative)

* Update worlds/witness/options.py

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

* Sure

* good suggestion

* subtest

* Add some EP shuffle unit tests, also an explicit event-checking unit test

* add more tests yay

* oops

* mypy

* Update worlds/witness/options.py

Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>

* Collapse into one test :(

* More efficiency

* line length

* More collapsing

* Cleanup and docstrings

---------

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
2024-07-06 13:40:55 +02:00

59 lines
1.6 KiB
Python

from ..test import WitnessTestBase
# These are just some random options combinations, just to catch whether I broke anything obvious
class TestExpertNonRandomizedEPs(WitnessTestBase):
options = {
"disable_non_randomized": True,
"puzzle_randomization": "sigma_expert",
"shuffle_EPs": "individual",
"ep_difficulty": "eclipse",
"victory_condition": "challenge",
"shuffle_discarded_panels": False,
"shuffle_boat": False,
}
class TestVanillaAutoElevatorsPanels(WitnessTestBase):
options = {
"puzzle_randomization": "none",
"elevators_come_to_you": True,
"shuffle_doors": "panels",
"victory_condition": "mountain_box_short",
"early_caves": True,
"shuffle_vault_boxes": True,
"mountain_lasers": 11,
}
class TestMiscOptions(WitnessTestBase):
options = {
"death_link": True,
"death_link_amnesty": 3,
"laser_hints": True,
"hint_amount": 40,
"area_hint_percentage": 100,
}
class TestMaxEntityShuffle(WitnessTestBase):
options = {
"shuffle_symbols": False,
"shuffle_doors": "mixed",
"shuffle_EPs": "individual",
"obelisk_keys": True,
"shuffle_lasers": "anywhere",
"victory_condition": "mountain_box_long",
}
class TestPostgameGroupedDoors(WitnessTestBase):
options = {
"shuffle_postgame": True,
"shuffle_discarded_panels": True,
"shuffle_doors": "doors",
"door_groupings": "regional",
"victory_condition": "elevator",
}