Release v0.2.34
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/ponzischeme89/memby/server/internal/store"
|
||||
)
|
||||
|
||||
func TestSubtitleFixAvailableNeedsAUsableReference(t *testing.T) {
|
||||
server := &Server{store: &store.Store{}}
|
||||
english := playableSubtitle{ID: "1", Language: "eng", URL: "https://emby/subtitle/1.srt"}
|
||||
italian := playableSubtitle{ID: "2", Language: "ita", URL: "https://emby/subtitle/2.srt"}
|
||||
|
||||
if server.subtitleFixAvailable([]playableSubtitle{english}) {
|
||||
t.Fatal("one subtitle cannot be checked against itself")
|
||||
}
|
||||
if !server.subtitleFixAvailable([]playableSubtitle{english, italian}) {
|
||||
t.Fatal("two readable text tracks should make timing repair available")
|
||||
}
|
||||
if (&Server{}).subtitleFixAvailable([]playableSubtitle{english, italian}) {
|
||||
t.Fatal("a gateway with no store cannot keep the repaired copy")
|
||||
}
|
||||
}
|
||||
|
||||
func TestSubtitleFixHandlerRejectsAnUnnamedTrack(t *testing.T) {
|
||||
server := &Server{store: &store.Store{}}
|
||||
request := httptest.NewRequest(
|
||||
http.MethodPost,
|
||||
"/v1/items/42/subtitles/fix",
|
||||
strings.NewReader(`{"subtitleId":" "}`),
|
||||
)
|
||||
request.SetPathValue("id", "42")
|
||||
recorder := httptest.NewRecorder()
|
||||
|
||||
server.handleSubtitleFix(recorder, request, store.Session{})
|
||||
|
||||
if recorder.Code != http.StatusBadRequest {
|
||||
t.Fatalf("status = %d, want 400", recorder.Code)
|
||||
}
|
||||
if !strings.Contains(recorder.Body.String(), "no subtitle was named") {
|
||||
t.Fatalf("body = %q", recorder.Body.String())
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user