feat: persist voice samples to disk, generate VTT, cleanup after analysis

This commit is contained in:
2026-04-16 19:50:38 +02:00
parent b4026235ab
commit 516ceb5882
13 changed files with 366 additions and 83 deletions

View File

@@ -0,0 +1,33 @@
package testutil
import "context"
type FakeVoiceFileStore struct {
SaveRawPath string
SaveConvertedPath string
SaveVTTPath string
SaveRawError error
SaveConvertedError error
SaveVTTError error
CleanupError error
CleanupCallCount int
LastCleanupID string
}
func (f *FakeVoiceFileStore) SaveRaw(_ context.Context, _ string, _ []byte) (string, error) {
return f.SaveRawPath, f.SaveRawError
}
func (f *FakeVoiceFileStore) SaveConverted(_ context.Context, _ string, _ []byte) (string, error) {
return f.SaveConvertedPath, f.SaveConvertedError
}
func (f *FakeVoiceFileStore) SaveVTT(_ context.Context, _ string, _ string) (string, error) {
return f.SaveVTTPath, f.SaveVTTError
}
func (f *FakeVoiceFileStore) Cleanup(_ context.Context, sampleID string) error {
f.CleanupCallCount++
f.LastCleanupID = sampleID
return f.CleanupError
}