ALARMS key stops every auto-fix too, and says so
Muted, nothing fixes itself at all: no Spotify exception (while_muted is gone) and no any-hour READY fix; holds still fix and the Sunday stream-audio failover still switches. The key reads ALARMS OFF / AUTO-FIX OFF / TIL 12AM, and its note says both. The settings page's switch says the same. The mute's end is worked out at the press and kept: a watchdog that was not running at 23:59 no longer leaves the alarms muted until the next schedule change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -522,8 +522,8 @@ class TestFixes(unittest.TestCase):
|
||||
self.assertFalse(any("/clips/" in path for _, path in calls)) # never plays a clip by itself
|
||||
|
||||
|
||||
class TestSpotifyWhileMuted(unittest.TestCase):
|
||||
def test_spotify_still_plays_with_alarms_muted(self):
|
||||
class TestSpotifyAndMute(unittest.TestCase):
|
||||
def test_alarms_muted_stops_spotify_too(self):
|
||||
cfg = json.loads(json.dumps(CONFIG))
|
||||
cfg["auto_fix"]["log_dir"] = __import__("tempfile").mkdtemp(prefix="sp-autolog-")
|
||||
engine, snap = sp.Engine(cfg, None), sp.Snapshot()
|
||||
@@ -538,14 +538,17 @@ class TestSpotifyWhileMuted(unittest.TestCase):
|
||||
engine.auto_fix(snap, None, wed + 40)
|
||||
for th in engine.fix_threads:
|
||||
th.join(2)
|
||||
self.assertEqual(ran, ["spotify_play"])
|
||||
cfg["auto_fix"]["while_muted"] = [] # without it: nothing while muted
|
||||
self.assertEqual(ran, []) # muted: nothing, not even Spotify
|
||||
engine2 = sp.Engine(cfg, None)
|
||||
engine2.service.set(False, wed)
|
||||
engine2.service.set(True, wed) # alarms on: it plays
|
||||
engine2.executor = engine.executor
|
||||
snap.remote = {}
|
||||
for t in range(0, 40, 2):
|
||||
engine2.step(snap, wed + t)
|
||||
self.assertEqual(engine2.auto_fix(snap, None, wed + 40), [])
|
||||
engine2.auto_fix(snap, None, wed + 40)
|
||||
for th in engine2.fix_threads:
|
||||
th.join(2)
|
||||
self.assertEqual(ran, ["spotify_play"])
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user