Give Sound the whole story, and keep the buttons inside the card
Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
This commit is contained in:
@@ -77,6 +77,22 @@ mute_result="$(qs_for_harness ipc call application-volume-test mutateMute)"
|
||||
jq -e '.changed == true and .muted == [true, true]' <<<"$mute_result" >/dev/null \
|
||||
|| fail "mute mutation did not reach every stream: $mute_result"
|
||||
|
||||
# Over-amplification lives in Settings, and AudioStreams.js is pure JavaScript
|
||||
# with no Settings import -- so the ceiling arrives as an argument. What must
|
||||
# not happen is a default that quietly follows the preference: a caller that
|
||||
# forgets to pass the max gets 100%, not 150%.
|
||||
clamp_result="$(qs_for_harness ipc call application-volume-test clampVolume)"
|
||||
jq -e '.overAmpChanged == true
|
||||
and ((.overAmp[0] - 1.4) | fabs) < 0.000001
|
||||
and (.overAmp | length) == 2 and (.overAmp[0] == .overAmp[1])
|
||||
and .overAmpMuted == [false, false]
|
||||
and .ceiling == [1.5, 1.5]
|
||||
and .defaultMax == [1, 1]
|
||||
and .floor == [0, 0]
|
||||
and .nonNumericChanged == false
|
||||
and .nonNumeric == [0.1, 0.1]' \
|
||||
<<<"$clamp_result" >/dev/null || fail "volume clamp did not honour its max parameter: $clamp_result"
|
||||
|
||||
service_summary="$(qs_for_harness ipc call application-volume-test serviceSummary)"
|
||||
jq -e '.count >= 0 and .validTypes == true' <<<"$service_summary" >/dev/null \
|
||||
|| fail "live service exposed invalid playback groups: $service_summary"
|
||||
|
||||
Reference in New Issue
Block a user