Files
Archipelago/worlds/stardew_valley/test/rules/TestStateRules.py
agilbert1412 36bab6f52a Stardew Valley: 0.6.7 Day 1 fixes (#6098)
- The Shane and Sebastian Portrait filler items werent tagged properly.
- The Beach Farm adds one secretsanity check, so it needs to be in the allsanity preset
- The Allsanity preset is renamed to "Maxsanity" to encourage better defined terminology and Allsanity means something else
- The "All Random" preset has been removed entirely. It has been the cause of too many beginner footguns over the years. People can still achieve the effect manually, but at least they'll have to try a little bit to ruin their own experience.
2026-04-07 21:38:04 +02:00

25 lines
1.1 KiB
Python

from ..bases import SVTestBase
from ..options.presets import maxsanity_mods_7_x_x
from ...stardew_rule import HasProgressionPercent
class TestHasProgressionPercentWithVictory(SVTestBase):
options = maxsanity_mods_7_x_x()
skip_default_tests = True
def test_has_100_progression_percent_is_false_while_items_are_missing(self):
has_100_progression_percent = HasProgressionPercent(1, 100)
for i, item in enumerate([i for i in self.multiworld.get_items() if i.advancement and i.code][1:]):
if item.name != "Victory":
self.collect(item)
self.assertFalse(has_100_progression_percent(self.multiworld.state),
f"Rule became true after {i} items, total_progression_items is {self.world.total_progression_items}")
def test_has_100_progression_percent_account_for_victory_not_being_collected(self):
has_100_progression_percent = HasProgressionPercent(1, 100)
self.collect_all_except("Victory")
self.assert_rule_true(has_100_progression_percent, self.multiworld.state)