41 lines
1.3 KiB
Go
41 lines
1.3 KiB
Go
package handler
|
|
|
|
import "testing"
|
|
|
|
func TestNormalizeReferenceMediaTypeSupportsAudio(t *testing.T) {
|
|
tests := []struct {
|
|
name string
|
|
contentType string
|
|
ext string
|
|
wantMime string
|
|
wantExt string
|
|
}{
|
|
{name: "mp3 mime", contentType: "audio/mpeg", ext: ".bin", wantMime: "audio/mpeg", wantExt: ".mp3"},
|
|
{name: "wav ext fallback", contentType: "application/octet-stream", ext: ".wav", wantMime: "audio/wav", wantExt: ".wav"},
|
|
}
|
|
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
mimeType, ext, ok := normalizeReferenceMediaType(tt.contentType, tt.ext)
|
|
if !ok {
|
|
t.Fatal("expected media type to be accepted")
|
|
}
|
|
if mimeType != tt.wantMime || ext != tt.wantExt {
|
|
t.Fatalf("got (%q, %q), want (%q, %q)", mimeType, ext, tt.wantMime, tt.wantExt)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestReferenceMediaTypeMaxBytes(t *testing.T) {
|
|
if got := referenceMediaTypeMaxBytes("audio/mpeg"); got != referenceAudioMaxBytes {
|
|
t.Fatalf("audio max bytes = %d, want %d", got, referenceAudioMaxBytes)
|
|
}
|
|
if got := referenceMediaTypeMaxBytes("video/mp4"); got != referenceVideoMaxBytes {
|
|
t.Fatalf("video max bytes = %d, want %d", got, referenceVideoMaxBytes)
|
|
}
|
|
if got := referenceMediaTypeMaxBytes("image/png"); got != referenceImageMaxBytes {
|
|
t.Fatalf("image max bytes = %d, want %d", got, referenceImageMaxBytes)
|
|
}
|
|
}
|