// Copyright (c) 2026 Storm Dragon // Authors: Storm Dragon, Angus Kola // SPDX-License-Identifier: GPL-3.0-or-later package sound import ( "context" "errors" "log/slog" "testing" "time" ) func TestSpeechBeepDecodesWithRoleSoundsDisabled(t *testing.T) { service := New(slog.New(slog.DiscardHandler), NativePlayer{Sink: "auto"}, "default", 0.5) service.Configure(Configuration{Enabled: false, Theme: "none", Sink: "test", Volume: 0.4}) ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second) defer cancel() if err := service.SpeechBeep(ctx); err != nil { t.Fatal(err) } canceled, cancelBeep := context.WithCancel(ctx) cancelBeep() if err := service.SpeechBeep(canceled); !errors.Is(err, context.Canceled) { t.Fatalf("canceled beep = %v", err) } }