diff --git a/coderd/pagination.go b/coderd/pagination.go index 02199a390ec60..0925af40fdba2 100644 --- a/coderd/pagination.go +++ b/coderd/pagination.go @@ -17,7 +17,7 @@ func parsePagination(w http.ResponseWriter, r *http.Request) (p codersdk.Paginat parser := httpapi.NewQueryParamParser() params := codersdk.Pagination{ AfterID: parser.UUID(queryParams, uuid.Nil, "after_id"), - Limit: int(parser.PositiveInt32(queryParams, 0, "limit")), + Limit: int(parser.PositiveInt32(queryParams, 20, "limit")), Offset: int(parser.PositiveInt32(queryParams, 0, "offset")), } if len(parser.Errors) > 0 { diff --git a/coderd/pagination_internal_test.go b/coderd/pagination_internal_test.go index adcfde6bbb641..5a3d92eba48de 100644 --- a/coderd/pagination_internal_test.go +++ b/coderd/pagination_internal_test.go @@ -16,6 +16,10 @@ import ( func TestPagination(t *testing.T) { t.Parallel() const invalidValues = "Query parameters have invalid values" + emptyReq, _ := http.NewRequestWithContext(context.Background(), http.MethodGet, "/", nil) + defaults, ok := parsePagination(httptest.NewRecorder(), emptyReq) + require.True(t, ok) + testCases := []struct { Name string @@ -98,6 +102,7 @@ func TestPagination(t *testing.T) { ExpectedParams: codersdk.Pagination{ AfterID: uuid.Nil, Offset: 150, + Limit: defaults.Limit, }, }, { @@ -105,6 +110,7 @@ func TestPagination(t *testing.T) { AfterID: "5f2005fc-acc4-4e5e-a7fa-be017359c60b", ExpectedParams: codersdk.Pagination{ AfterID: uuid.MustParse("5f2005fc-acc4-4e5e-a7fa-be017359c60b"), + Limit: defaults.Limit, }, }, }