feat(audio): passing tone only during races and remove legacy audio
Adds 'Calls during a race' (default: passing tone only, like timing systems) that drops name/personal best/leader/position calls in race sessions; practice keeps them. Removes the legacy audio panel and fallbacks, including its 'Sound on' switch that silently muted every race-audio voice. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -43,4 +43,17 @@ export async function runSettingsTabsSmoke({ evaluate, navigate }) {
|
||||
assert.equal(visible.system, true);
|
||||
assert.equal(visible.connection, false);
|
||||
console.log("PASS the active settings tab is preserved across a save-triggered re-render");
|
||||
|
||||
// The old "Audio · Legacy" panel is gone; "Calls during a race" defaults to passing tone
|
||||
// only and survives a save.
|
||||
await evaluate(`document.querySelector('[data-settings-tab="audio"]').click()`);
|
||||
assert.equal(await evaluate(`/Legacy/.test(document.querySelector('[data-settings-panel="audio"]').innerText)`), false, "no legacy audio panel");
|
||||
assert.equal(await evaluate(`Boolean(document.querySelector('[name="audioEnabled"], [name="passingSoundMode"]'))`), false, "no legacy sound switches");
|
||||
const callouts = () => evaluate(`document.querySelector('[name="raceAudioRaceCallouts"]').value`);
|
||||
assert.equal(await callouts(), "passing");
|
||||
await evaluate(`(() => { document.querySelector('[name="raceAudioRaceCallouts"]').value = "full"; document.getElementById("settingsForm").requestSubmit(); })()`);
|
||||
assert.equal(await callouts(), "full", "speaker mode is saved");
|
||||
await evaluate(`(() => { document.querySelector('[name="raceAudioRaceCallouts"]').value = "passing"; document.getElementById("settingsForm").requestSubmit(); })()`);
|
||||
assert.equal(await callouts(), "passing");
|
||||
console.log("PASS the legacy audio panel is gone and race calls default to passing tone only");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user