| package audioflow |
|
|
| import ( |
| "testing" |
| ) |
|
|
| func TestNormalizeFormat(t *testing.T) { |
| tests := []struct { |
| input string |
| expected string |
| }{ |
| {"mp3", "mp3"}, |
| {"opus", "opus"}, |
| {"aac", "aac"}, |
| {"flac", "aac"}, |
| {"wav", "aac"}, |
| {"pcm", "aac"}, |
| {"", "aac"}, |
| {"unknown", "aac"}, |
| } |
| for _, tt := range tests { |
| result := NormalizeFormat(tt.input) |
| if result != tt.expected { |
| t.Errorf("NormalizeFormat(%q) = %q, want %q", tt.input, result, tt.expected) |
| } |
| } |
| } |
|
|
| func TestNormalizeVoice(t *testing.T) { |
| tests := []struct { |
| input string |
| expected string |
| }{ |
| {"alloy", "cove"}, |
| {"ash", "fathom"}, |
| {"coral", "vale"}, |
| {"echo", "ember"}, |
| {"fable", "breeze"}, |
| {"onyx", "orbit"}, |
| {"nova", "maple"}, |
| {"sage", "glimmer"}, |
| {"shimmer", "juniper"}, |
| {"", "cove"}, |
| {"unknown", "cove"}, |
| } |
| for _, tt := range tests { |
| result := NormalizeVoice(tt.input) |
| if result != tt.expected { |
| t.Errorf("NormalizeVoice(%q) = %q, want %q", tt.input, result, tt.expected) |
| } |
| } |
| } |
|
|
| func TestContentTypeForFormat(t *testing.T) { |
| tests := []struct { |
| input string |
| expected string |
| }{ |
| {"mp3", "audio/mpeg"}, |
| {"opus", "audio/ogg"}, |
| {"aac", "audio/aac"}, |
| {"unknown", "audio/aac"}, |
| } |
| for _, tt := range tests { |
| result := ContentTypeForFormat(tt.input) |
| if result != tt.expected { |
| t.Errorf("ContentTypeForFormat(%q) = %q, want %q", tt.input, result, tt.expected) |
| } |
| } |
| } |
|
|
| func TestValidateTranscriptionFormat(t *testing.T) { |
| tests := []struct { |
| input string |
| expected bool |
| }{ |
| {"json", true}, |
| {"text", true}, |
| {"verbose_json", true}, |
| {"unknown", false}, |
| {"", false}, |
| } |
| for _, tt := range tests { |
| _, ok := ValidateTranscriptionFormat(tt.input) |
| if ok != tt.expected { |
| t.Errorf("ValidateTranscriptionFormat(%q) = %v, want %v", tt.input, ok, tt.expected) |
| } |
| } |
| } |
|
|