fix: boost control is a switch; MutationQueue keeps one enqueue per kind (M464 #4998)
release / go (push) Successful in 2m15s
release / web (push) Successful in 1m42s
release / govulncheck (push) Successful in 29s
release / android (push) Successful in 5m57s
release / Build signed APK (releases and dev) (push) Successful in 5m49s
release / integration (push) Failing after 20m33s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Skipped
release / Verify release artifacts (tag releases only) (push) Skipped
release / go (push) Successful in 2m15s
release / web (push) Successful in 1m42s
release / govulncheck (push) Successful in 29s
release / android (push) Successful in 5m57s
release / Build signed APK (releases and dev) (push) Successful in 5m49s
release / integration (push) Failing after 20m33s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Skipped
release / Verify release artifacts (tag releases only) (push) Skipped
The ListenBrainz settings test finds the page's one checkbox, and the boost control is a toggle anyway. detekt counts MutationQueue's enqueue functions; suppressed as the replayer's dispatchers already are. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+1
@@ -91,6 +91,7 @@ data class RequestCreatePayload(
|
||||
* This matches `feedback_offline_first_for_server_writes` — writes
|
||||
* never go fire-and-forget.
|
||||
*/
|
||||
@Suppress("TooManyFunctions") // one enqueue per mutation kind, like the replayer's dispatchers
|
||||
@Singleton
|
||||
class MutationQueue @Inject constructor(
|
||||
private val dao: CachedMutationDao,
|
||||
|
||||
@@ -94,6 +94,8 @@
|
||||
</span>
|
||||
<input
|
||||
type="checkbox"
|
||||
role="switch"
|
||||
aria-checked={normalization.value.boost === 'limiter'}
|
||||
checked={normalization.value.boost === 'limiter'}
|
||||
onchange={(e) =>
|
||||
change({ boost: (e.currentTarget as HTMLInputElement).checked ? 'limiter' : 'headroom' })}
|
||||
|
||||
@@ -31,7 +31,7 @@ describe('NormalizationSetting', () => {
|
||||
await waitFor(() =>
|
||||
expect(putNormalization).toHaveBeenCalledWith({ mode: 'album', target_lufs: -16, boost: 'headroom' })
|
||||
);
|
||||
await fireEvent.click(screen.getByRole('checkbox', { name: /boost quiet tracks/i }));
|
||||
await fireEvent.click(screen.getByRole('switch', { name: /boost quiet tracks/i }));
|
||||
await waitFor(() =>
|
||||
expect(putNormalization).toHaveBeenLastCalledWith({ mode: 'album', target_lufs: -16, boost: 'limiter' })
|
||||
);
|
||||
@@ -60,6 +60,6 @@ describe('NormalizationSetting', () => {
|
||||
render(NormalizationSetting);
|
||||
await waitFor(() => expect(screen.getByRole('radio', { name: 'Off' })).toBeChecked());
|
||||
expect(screen.queryByRole('radio', { name: '-18 LUFS' })).toBeNull();
|
||||
expect(screen.queryByRole('checkbox')).toBeNull();
|
||||
expect(screen.queryByRole('switch')).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user