From 37c5e6621743c11c636bee701c76653fba1ba31a Mon Sep 17 00:00:00 2001 From: mkelvers Date: Sun, 28 Jun 2026 12:50:09 +0200 Subject: [PATCH] fix: add anime details link to continue watching card --- templates/components/continue_watching.gohtml | 2 +- templates/renderer_test.go | 31 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/templates/components/continue_watching.gohtml b/templates/components/continue_watching.gohtml index 38b52c21..c6ba6a7c 100644 --- a/templates/components/continue_watching.gohtml +++ b/templates/components/continue_watching.gohtml @@ -30,7 +30,7 @@
- +

{{$title}}

diff --git a/templates/renderer_test.go b/templates/renderer_test.go index e32cdc3e..d40b4cde 100644 --- a/templates/renderer_test.go +++ b/templates/renderer_test.go @@ -2,8 +2,10 @@ package templates import ( "bytes" + "database/sql" "encoding/json" "mal/integrations/jikan" + "mal/internal/db" "mal/internal/domain" "net/http/httptest" "strings" @@ -254,3 +256,32 @@ func TestExecuteFragmentInvalidTemplate(t *testing.T) { t.Fatal("expected error for missing template") } } + +func TestContinueWatchingTemplateIncludesAnimeDetailsLink(t *testing.T) { + r, err := ProvideRenderer() + if err != nil { + t.Fatal(err) + } + + var buf bytes.Buffer + err = r.ExecuteFragment(&buf, "index.gohtml", "continue_watching", []db.GetContinueWatchingEntriesRow{ + { + AnimeID: 321, + TitleOriginal: "Original Title", + TitleEnglish: sql.NullString{String: "English Title", Valid: true}, + ImageUrl: "https://example.com/poster.webp", + CurrentEpisode: sql.NullInt64{Int64: 7, Valid: true}, + }, + }) + if err != nil { + t.Fatalf("ExecuteFragment error: %v", err) + } + + body := buf.String() + if !strings.Contains(body, `href="/anime/321"`) { + t.Fatalf("continue watching card should include anime details link:\n%s", body) + } + if !strings.Contains(body, `href="/anime/321/watch?ep=7"`) { + t.Fatalf("continue watching card should keep watch link:\n%s", body) + } +}