Release v0.2.34
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"net/http/httptest"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestGenreTotalPrefersEmbysOwnCount(t *testing.T) {
|
||||
if got := genreTotal(412, 48, 48, 48); got != 412 {
|
||||
t.Fatalf("genreTotal = %d, want the reported 412", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGenreTotalKeepsScrollingWhenNobodyCounted(t *testing.T) {
|
||||
// A full page with no count: there may be more, so the total has to sit past what has
|
||||
// been delivered or the television stops half way through the genre.
|
||||
if got := genreTotal(0, 48, 48, 48); got <= 96 {
|
||||
t.Fatalf("genreTotal = %d, want more than the 96 delivered", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGenreTotalStopsOnAShortPage(t *testing.T) {
|
||||
// A short page is the end of the genre. Claiming anything beyond it leaves the grid
|
||||
// asking for a page that will never come.
|
||||
if got := genreTotal(0, 48, 11, 48); got != 59 {
|
||||
t.Fatalf("genreTotal = %d, want exactly the 59 delivered", got)
|
||||
}
|
||||
if got := genreTotal(0, 0, 0, 48); got != 0 {
|
||||
t.Fatalf("genreTotal = %d, want 0 for a genre with nothing in it", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestQueryOffsetTreatsZeroAsAValueRatherThanAMissingOne(t *testing.T) {
|
||||
cases := map[string]int{
|
||||
"": 0,
|
||||
"offset=0": 0,
|
||||
"offset=48": 48,
|
||||
"offset=-3": 0,
|
||||
"offset=nonsense": 0,
|
||||
}
|
||||
for query, want := range cases {
|
||||
r := httptest.NewRequest("GET", "/v1/genres/Comedy/items?"+query, nil)
|
||||
if got := queryOffset(r, "offset"); got != want {
|
||||
t.Errorf("queryOffset(%q) = %d, want %d", query, got, want)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user