Skip to content

Commit

Permalink
WebHost: Allowing options that work on WebHost to be used in presets (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
Exempt-Medic authored Jun 3, 2024
1 parent 424c8b0 commit d9120f0
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
2 changes: 1 addition & 1 deletion WebHostLib/options.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ def option_presets(game: str) -> Response:
f"Expected {option.special_range_names.keys()} or {option.range_start}-{option.range_end}."

presets[preset_name][preset_option_name] = option.value
elif isinstance(option, Options.Range):
elif isinstance(option, (Options.Range, Options.OptionSet, Options.OptionList, Options.ItemDict)):
presets[preset_name][preset_option_name] = option.value
elif isinstance(preset_option, str):
# Ensure the option value is valid for Choice and Toggle options
Expand Down
4 changes: 2 additions & 2 deletions test/webhost/test_option_presets.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import unittest

from worlds import AutoWorldRegister
from Options import Choice, NamedRange, Toggle, Range
from Options import ItemDict, NamedRange, NumericOption, OptionList, OptionSet


class TestOptionPresets(unittest.TestCase):
Expand All @@ -14,7 +14,7 @@ def test_option_presets_have_valid_options(self):
with self.subTest(game=game_name, preset=preset_name, option=option_name):
try:
option = world_type.options_dataclass.type_hints[option_name].from_any(option_value)
supported_types = [Choice, Toggle, Range, NamedRange]
supported_types = [NumericOption, OptionSet, OptionList, ItemDict]
if not any([issubclass(option.__class__, t) for t in supported_types]):
self.fail(f"'{option_name}' in preset '{preset_name}' for game '{game_name}' "
f"is not a supported type for webhost. "
Expand Down

0 comments on commit d9120f0

Please sign in to comment.