test: cover player constructor success path
- commit
- 04b2aa7556faccaacfec8110ad79307c8227adb1
- author
- brice · · 2026-04-09 14:21 UTC
- parent
- 07c742c
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
1 file · +36 -0
M pipewire/player_test.go +36 -0
| @@ -1,6 +1,7 @@ | |||
| 1 | 1 | package pipewire | |
| 2 | 2 | ||
| 3 | 3 | import ( | |
| 4 | + | "errors" | |
| 4 | 5 | "testing" | |
| 5 | 6 | ) | |
| 6 | 7 | ||
| @@ -9,4 +10,39 @@ func TestNewPlayerRejectsInvalidConfig(t *testing.T) { | |||
| 9 | 10 | if err == nil { | |
| 10 | 11 | t.Fatal("NewPlayer returned nil error for invalid config") | |
| 11 | 12 | } | |
| 13 | + | if !errors.Is(err, ErrInvalidPlayerConfig) { | |
| 14 | + | t.Fatalf("expected ErrInvalidPlayerConfig, got %v", err) | |
| 15 | + | } | |
| 16 | + | } | |
| 17 | + | ||
| 18 | + | func TestNewPlayerAcceptsValidConfig(t *testing.T) { | |
| 19 | + | config := PlayerConfig{ | |
| 20 | + | SampleRate: 44100, | |
| 21 | + | Channels: 2, | |
| 22 | + | FramesPerBuffer: 256, | |
| 23 | + | SampleFormat: SampleFormatF32, | |
| 24 | + | } | |
| 25 | + | player, err := NewPlayer(config, PlayerCallbacks{}) | |
| 26 | + | if err != nil { | |
| 27 | + | t.Fatalf("NewPlayer returned error for valid config: %v", err) | |
| 28 | + | } | |
| 29 | + | if player == nil { | |
| 30 | + | t.Fatal("NewPlayer returned nil player for valid config") | |
| 31 | + | } | |
| 32 | + | } | |
| 33 | + | ||
| 34 | + | func TestPlayerStateReflectsInitialState(t *testing.T) { | |
| 35 | + | config := PlayerConfig{ | |
| 36 | + | SampleRate: 44100, | |
| 37 | + | Channels: 2, | |
| 38 | + | FramesPerBuffer: 256, | |
| 39 | + | SampleFormat: SampleFormatF32, | |
| 40 | + | } | |
| 41 | + | player, err := NewPlayer(config, PlayerCallbacks{}) | |
| 42 | + | if err != nil { | |
| 43 | + | t.Fatalf("NewPlayer returned error: %v", err) | |
| 44 | + | } | |
| 45 | + | if player.State() != Idle { | |
| 46 | + | t.Fatalf("expected initial state Idle, got %v", player.State()) | |
| 47 | + | } | |
| 12 | 48 | } | |
| @@ -1,6 +1,7 @@ | |||||
| 1 | package pipewire | 1 | package pipewire | ||
| 2 | 2 | ||||
| 3 | import ( | 3 | import ( | ||
| 4 | + | "errors" | |||
| 4 | "testing" | 5 | "testing" | ||
| 5 | ) | 6 | ) | ||
| 6 | 7 | ||||
| @@ -9,4 +10,39 @@ func TestNewPlayerRejectsInvalidConfig(t *testing.T) { | |||||
| 9 | if err == nil { | 10 | if err == nil { | ||
| 10 | t.Fatal("NewPlayer returned nil error for invalid config") | 11 | t.Fatal("NewPlayer returned nil error for invalid config") | ||
| 11 | } | 12 | } | ||
| 13 | + | if !errors.Is(err, ErrInvalidPlayerConfig) { | |||
| 14 | + | t.Fatalf("expected ErrInvalidPlayerConfig, got %v", err) | |||
| 15 | + | } | |||
| 16 | + | } | |||
| 17 | + | ||||
| 18 | + | func TestNewPlayerAcceptsValidConfig(t *testing.T) { | |||
| 19 | + | config := PlayerConfig{ | |||
| 20 | + | SampleRate: 44100, | |||
| 21 | + | Channels: 2, | |||
| 22 | + | FramesPerBuffer: 256, | |||
| 23 | + | SampleFormat: SampleFormatF32, | |||
| 24 | + | } | |||
| 25 | + | player, err := NewPlayer(config, PlayerCallbacks{}) | |||
| 26 | + | if err != nil { | |||
| 27 | + | t.Fatalf("NewPlayer returned error for valid config: %v", err) | |||
| 28 | + | } | |||
| 29 | + | if player == nil { | |||
| 30 | + | t.Fatal("NewPlayer returned nil player for valid config") | |||
| 31 | + | } | |||
| 32 | + | } | |||
| 33 | + | ||||
| 34 | + | func TestPlayerStateReflectsInitialState(t *testing.T) { | |||
| 35 | + | config := PlayerConfig{ | |||
| 36 | + | SampleRate: 44100, | |||
| 37 | + | Channels: 2, | |||
| 38 | + | FramesPerBuffer: 256, | |||
| 39 | + | SampleFormat: SampleFormatF32, | |||
| 40 | + | } | |||
| 41 | + | player, err := NewPlayer(config, PlayerCallbacks{}) | |||
| 42 | + | if err != nil { | |||
| 43 | + | t.Fatalf("NewPlayer returned error: %v", err) | |||
| 44 | + | } | |||
| 45 | + | if player.State() != Idle { | |||
| 46 | + | t.Fatalf("expected initial state Idle, got %v", player.State()) | |||
| 47 | + | } | |||
| 12 | } | 48 | } | ||