src/server/internal/recording/recorder_test.go
1,301 bytes · 48 lines · capsule://quake0day/[email protected]
raw on github
package recording
import (
"os"
"path/filepath"
"testing"
"github.com/cyberverse/server/internal/config"
)
func TestSaveTranscriptWritesTurnTextFile(t *testing.T) {
tmpDir := t.TempDir()
recorder := NewVideoRecorder(config.RecordingConfig{
Enabled: true,
OutputDir: tmpDir,
})
const transcript = "豆包回复文本"
if err := recorder.SaveTranscript("session-1", "turn1", transcript); err != nil {
t.Fatalf("SaveTranscript returned error: %v", err)
}
got, err := os.ReadFile(filepath.Join(tmpDir, "session-1", "turn1.txt"))
if err != nil {
t.Fatalf("ReadFile returned error: %v", err)
}
if string(got) != transcript {
t.Fatalf("expected transcript %q, got %q", transcript, string(got))
}
}
func TestSaveTranscriptUsesAbsoluteSessionDir(t *testing.T) {
tmpDir := t.TempDir()
sessionDir := filepath.Join(tmpDir, "sessions", "session-abs")
recorder := NewVideoRecorder(config.RecordingConfig{
Enabled: true,
OutputDir: filepath.Join(tmpDir, "ignored"),
})
if err := recorder.SaveTranscript(sessionDir, "turn2", "absolute transcript"); err != nil {
t.Fatalf("SaveTranscript returned error: %v", err)
}
if _, err := os.Stat(filepath.Join(sessionDir, "turn2.txt")); err != nil {
t.Fatalf("expected transcript file in absolute session dir: %v", err)
}
}