|
- package dryrun
-
- import (
- "os"
- "path/filepath"
- "testing"
-
- cfgpkg "github.com/jan/fm-rds-tx/internal/config"
- )
-
- func TestGenerate(t *testing.T) {
- cfg := cfgpkg.Default()
- frame := Generate(cfg)
- if frame.Mode != "dry-run" {
- t.Fatalf("unexpected mode: %s", frame.Mode)
- }
- if len(frame.PreviewSamples) != 16 {
- t.Fatalf("unexpected preview length: %d", len(frame.PreviewSamples))
- }
- if frame.Source != "tones" {
- t.Fatalf("unexpected source: %s", frame.Source)
- }
- }
-
- func TestGenerateUsesInputPathAsSource(t *testing.T) {
- cfg := cfgpkg.Default()
- cfg.Audio.InputPath = "demo.wav"
- frame := Generate(cfg)
- if frame.Source != "demo.wav" {
- t.Fatalf("unexpected source: %s", frame.Source)
- }
- }
-
- func TestWriteJSONFile(t *testing.T) {
- dir := t.TempDir()
- out := filepath.Join(dir, "frame.json")
- if err := WriteJSON(out, Generate(cfgpkg.Default())); err != nil {
- t.Fatalf("WriteJSON failed: %v", err)
- }
- if _, err := os.Stat(out); err != nil {
- t.Fatalf("expected output file: %v", err)
- }
- }
|