Files
barnard/audio_driver_test.go

30 lines
1.0 KiB
Go

package main
import "testing"
func TestSelectAudioDriver(t *testing.T) {
tests := []struct {
name string
flagDriver string
envDriver string
pulseServer string
configDriver string
want string
}{
{name: "defaults", want: ""},
{name: "configured driver", configDriver: " alsa ", want: "alsa"},
{name: "Pulse server", pulseServer: "tcp:127.0.0.1:4713", want: "pulse"},
{name: "Pulse server over configured driver", pulseServer: "unix:/tmp/pulse.sock", configDriver: "pipewire", want: "pulse"},
{name: "explicit environment over Pulse server", envDriver: "alsa", pulseServer: "tcp:127.0.0.1:4713", want: "alsa"},
{name: "flag over environment", flagDriver: " pipewire ", envDriver: "alsa", pulseServer: "tcp:127.0.0.1:4713", want: "pipewire"},
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
got := select_audio_driver(test.flagDriver, test.envDriver, test.pulseServer, test.configDriver)
if got != test.want {
t.Errorf("select_audio_driver() = %q, want %q", got, test.want)
}
})
}
}