mirror of
https://github.com/bluenviron/mediamtx
synced 2025-02-20 13:36:51 +00:00
parent
581a840771
commit
67672ea9c6
@ -84,7 +84,10 @@ func paginate2(itemsPtr interface{}, itemsPerPage int, page int) int {
|
||||
return 0
|
||||
}
|
||||
|
||||
pageCount := (itemsLen / itemsPerPage) + 1
|
||||
pageCount := (itemsLen / itemsPerPage)
|
||||
if (itemsLen % itemsPerPage) != 0 {
|
||||
pageCount++
|
||||
}
|
||||
|
||||
min := page * itemsPerPage
|
||||
if min >= itemsLen {
|
||||
|
@ -78,6 +78,38 @@ func httpRequest(method string, ur string, in interface{}, out interface{}) erro
|
||||
return json.NewDecoder(res.Body).Decode(out)
|
||||
}
|
||||
|
||||
func TestPagination(t *testing.T) {
|
||||
items := make([]int, 5)
|
||||
for i := 0; i < 5; i++ {
|
||||
items[i] = i
|
||||
}
|
||||
|
||||
pageCount, err := paginate(&items, "1", "1")
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, 5, pageCount)
|
||||
require.Equal(t, []int{1}, items)
|
||||
|
||||
items = make([]int, 5)
|
||||
for i := 0; i < 5; i++ {
|
||||
items[i] = i
|
||||
}
|
||||
|
||||
pageCount, err = paginate(&items, "3", "2")
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, 2, pageCount)
|
||||
require.Equal(t, []int{4}, items)
|
||||
|
||||
items = make([]int, 6)
|
||||
for i := 0; i < 6; i++ {
|
||||
items[i] = i
|
||||
}
|
||||
|
||||
pageCount, err = paginate(&items, "3", "3")
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, 2, pageCount)
|
||||
require.Equal(t, []int{5}, items)
|
||||
}
|
||||
|
||||
func TestAPIConfigGet(t *testing.T) {
|
||||
// since the HTTP server is created and deleted multiple times,
|
||||
// we can't reuse TCP connections.
|
||||
|
Loading…
Reference in New Issue
Block a user