package playletser import "testing" func TestBuildThemeIndexPage(t *testing.T) { themes := make([]PlayletThemeItem, 0, 23) for i := 1; i <= 23; i++ { themes = append(themes, PlayletThemeItem{ID: int64(i), Name: "专题", Status: true}) } themes[1].Status = false themes[2].Name = "" first, total := BuildThemeIndexPage(themes, ParseThemeIndexQuery("1")) if total != 21 || len(first) != 20 { t.Fatalf("first page = (%d, %d), want (20, 21)", len(first), total) } second, _ := BuildThemeIndexPage(themes, ParseThemeIndexQuery("2")) if len(second) != 1 { t.Fatalf("second page length = %d, want 1", len(second)) } if got := ThemeIndexCanonicalPath(ParseThemeIndexQuery("2")); got != "/topic/page/2" { t.Fatalf("canonical path = %q, want /topic/page/2", got) } }