Files
fish03andClaude Opus 5.5 bef9f8b4ed Initial commit
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 14:43:16 +07:00

69 lines
2.0 KiB
Go

package seoser
import (
"net/http/httptest"
"testing"
"videoweb/app/service/configser"
"github.com/gin-gonic/gin"
)
func TestResolveSiteURLUsesForeverURLAddr(t *testing.T) {
cfg := configser.AppConfigVM{
ForeverURLAddr: "https://forever.prod.com/path",
}
c, _ := gin.CreateTestContext(httptest.NewRecorder())
c.Request = httptest.NewRequest("GET", "https://temp.example.com/", nil)
got := ResolveSiteURL(c, cfg)
want := "https://forever.prod.com"
if got != want {
t.Fatalf("ResolveSiteURL() = %q, want %q", got, want)
}
}
func TestResolveSiteURLFallbackRequestHost(t *testing.T) {
cfg := configser.AppConfigVM{}
c, _ := gin.CreateTestContext(httptest.NewRecorder())
c.Request = httptest.NewRequest("GET", "https://temp.example.com/", nil)
got := ResolveSiteURL(c, cfg)
want := "https://temp.example.com"
if got != want {
t.Fatalf("ResolveSiteURL() = %q, want %q", got, want)
}
}
func TestPageCanonicalURLHomepageUsesSiteURL(t *testing.T) {
c, _ := gin.CreateTestContext(httptest.NewRecorder())
c.Request = httptest.NewRequest("GET", "https://mirror.example.com/", nil)
got := PageCanonicalURL("https://www.prod.com", "", c)
want := "https://www.prod.com/"
if got != want {
t.Fatalf("PageCanonicalURL() = %q, want %q", got, want)
}
}
func TestPageCanonicalURLSubpageUsesSiteURLAndPath(t *testing.T) {
c, _ := gin.CreateTestContext(httptest.NewRecorder())
c.Request = httptest.NewRequest("GET", "https://mirror.example.com/list?theme=1&page=2", nil)
got := PageCanonicalURL("https://www.prod.com", "", c)
want := "https://www.prod.com/list?theme=1&page=2"
if got != want {
t.Fatalf("PageCanonicalURL() = %q, want %q", got, want)
}
}
func TestPageCanonicalURLFallbackForeverURLAddr(t *testing.T) {
c, _ := gin.CreateTestContext(httptest.NewRecorder())
c.Request = httptest.NewRequest("GET", "/detail/example-show", nil)
got := PageCanonicalURL("", "https://forever.prod.com/app", c)
want := "https://forever.prod.com/detail/example-show"
if got != want {
t.Fatalf("PageCanonicalURL() = %q, want %q", got, want)
}
}