Archipelago/test/general
Doug Hoskisson b5343a36ff
Core: fix settings API for removal of Python 3.8, 3.9 (#4280)
* Core: fix settings API for removal of Python 3.8, 3.9

This is fixing 2 problems:
- The `World` class has the annotation:
  `settings: ClassVar[Optional["Group"]]`
  so `MyWorld.settings` should not raise an exception like it does for some worlds.
  With the `Optional` there, it looks like it should return `None` for the worlds that don't use it. So that's what I changed it to.

- `Group.update` had some code that required `typing.Union` instead of the Python 3.10 `|` for unions.

added unit test for this fix
added change in Zillion that I used to discover this problem and used it to test the test

* fix copy-pasted stuff

* tuple instead of set

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

---------

Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
2024-11-29 21:17:56 +01:00
..
__init__.py Tests: Add checksum validation to the postgen datapackage test (#3456) 2024-06-10 09:28:28 +02:00
test_client_server_interaction.py Core: Fix auto-fill in the text client when clicking on a hint suggestion (#3267) 2024-06-01 07:32:41 -05:00
test_fill.py Tests: Update test_fill.py to use Options API (#4128) 2024-11-01 12:43:28 +01:00
test_groups.py Tests: test that item/location name groups are not empty (#2748) 2024-01-30 08:34:54 +01:00
test_helpers.py Core: don't allow region, location, or entrance with duplicate names (#2453) 2024-02-25 21:56:27 +01:00
test_host_yaml.py settings: safer writing (#3644) 2024-07-25 09:10:36 +02:00
test_ids.py Tests: Add checksum validation to the postgen datapackage test (#3456) 2024-06-10 09:28:28 +02:00
test_implemented.py Tests: test that no worlds fail to load (#3318) 2024-05-19 00:42:58 +02:00
test_items.py WebHost, Core: Move item and location descriptions to `WebWorld` responsibilities. (#2508) 2024-05-23 02:08:08 -05:00
test_locations.py WebHost, Core: Move item and location descriptions to `WebWorld` responsibilities. (#2508) 2024-05-23 02:08:08 -05:00
test_memory.py Core: fix some memory leak sources without removing caching (#2400) 2023-10-31 02:08:56 +01:00
test_names.py Tests: modern PEP8-ify core test modules and methods (#2298) 2023-10-22 13:00:27 +02:00
test_options.py Tests: Use Option.from_any instead of Option() in test_pickle_dumps, which is currently preventing Range options from using default: "random" #4197 2024-11-17 01:52:49 +01:00
test_player_options.py Generate: remove tag "-" (#3036) 2024-05-23 15:03:21 +02:00
test_reachability.py Blasphemous: Total overhaul (#3355) 2024-08-21 01:18:28 +02:00
test_settings.py Core: fix settings API for removal of Python 3.8, 3.9 (#4280) 2024-11-29 21:17:56 +01:00