summaryrefslogtreecommitdiff
path: root/cmd/mediaplayer
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-04-30 23:03:39 +0300
committerPaul Buetow <paul@buetow.org>2026-04-30 23:03:39 +0300
commitcfbffc5e8911f0f4bdd63c0fcf4953372a990ac0 (patch)
tree37dd46ae6cc1a9cd735aa7e4d2239c315735385c /cmd/mediaplayer
parentdfa05f2f78911c8817ff15e0c4f3806ddabdc32e (diff)
pa: raise aggregate test coverage to 81.5%
Diffstat (limited to 'cmd/mediaplayer')
-rw-r--r--cmd/mediaplayer/main_test.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/cmd/mediaplayer/main_test.go b/cmd/mediaplayer/main_test.go
index 08b9d92..e01cff9 100644
--- a/cmd/mediaplayer/main_test.go
+++ b/cmd/mediaplayer/main_test.go
@@ -1,9 +1,12 @@
package main
import (
+ "bytes"
+ "io"
"log/slog"
"os"
"path/filepath"
+ "strings"
"testing"
"time"
@@ -45,3 +48,39 @@ func TestGCWorkerWiring(t *testing.T) {
w.Start()
w.Stop() // must not panic even after interacting with real store
}
+
+func TestRun_VersionFlag(t *testing.T) {
+ old := os.Stdout
+ r, w, _ := os.Pipe()
+ os.Stdout = w
+
+ err := run([]string{"-version"})
+ w.Close()
+ os.Stdout = old
+
+ if err != nil {
+ t.Fatalf("unexpected error: %v", err)
+ }
+
+ var buf bytes.Buffer
+ io.Copy(&buf, r)
+ out := strings.TrimSpace(buf.String())
+ if out != internal.Version {
+ t.Fatalf("expected %q, got %q", internal.Version, out)
+ }
+}
+
+func TestRun_InvalidFlag(t *testing.T) {
+ err := run([]string{"-invalidflag"})
+ if err == nil {
+ t.Fatal("expected error for invalid flag")
+ }
+}
+
+func TestRun_InvalidConfig(t *testing.T) {
+ t.Setenv("PORT", "invalid")
+ err := run([]string{})
+ if err == nil {
+ t.Fatal("expected error for invalid PORT")
+ }
+}