From 6118d719ed9a71728a0d020a01d5a39f8484a47e Mon Sep 17 00:00:00 2001 From: CirnoT <1447794+CirnoT@users.noreply.github.com> Date: Mon, 8 Jun 2020 18:12:18 +0200 Subject: [PATCH 1/3] Honor DEFAULT_PAGING_NUM for API --- modules/convert/utils.go | 2 +- routers/api/v1/repo/topic.go | 6 ------ routers/repo/release.go | 7 ------- 3 files changed, 1 insertion(+), 14 deletions(-) diff --git a/modules/convert/utils.go b/modules/convert/utils.go index 66fb21be679e5..ddb8a8820d42a 100644 --- a/modules/convert/utils.go +++ b/modules/convert/utils.go @@ -11,7 +11,7 @@ import ( // ToCorrectPageSize makes sure page size is in allowed range. func ToCorrectPageSize(size int) int { if size <= 0 { - size = 10 + size = setting.API.DefaultPagingNum } else if size > setting.API.MaxResponseItems { size = setting.API.MaxResponseItems } diff --git a/routers/api/v1/repo/topic.go b/routers/api/v1/repo/topic.go index 530b92a10d0d4..f256ab9422ec6 100644 --- a/routers/api/v1/repo/topic.go +++ b/routers/api/v1/repo/topic.go @@ -275,12 +275,6 @@ func TopicSearch(ctx *context.APIContext) { kw := ctx.Query("q") listOptions := utils.GetListOptions(ctx) - if listOptions.Page < 1 { - listOptions.Page = 1 - } - if listOptions.PageSize < 1 { - listOptions.PageSize = 10 - } topics, err := models.FindTopics(&models.FindTopicOptions{ Keyword: kw, diff --git a/routers/repo/release.go b/routers/repo/release.go index 1eac3dce97236..1845563bcf759 100644 --- a/routers/repo/release.go +++ b/routers/repo/release.go @@ -69,13 +69,6 @@ func Releases(ctx *context.Context) { IncludeTags: true, } - if opts.ListOptions.Page <= 1 { - opts.ListOptions.Page = 1 - } - if opts.ListOptions.PageSize <= 0 { - opts.ListOptions.Page = 10 - } - releases, err := models.GetReleasesByRepoID(ctx.Repo.Repository.ID, opts) if err != nil { ctx.ServerError("GetReleasesByRepoID", err) From 7a0a5b8e14fbc0625c9203306b7f27a262538063 Mon Sep 17 00:00:00 2001 From: CirnoT <1447794+CirnoT@users.noreply.github.com> Date: Mon, 8 Jun 2020 19:46:48 +0200 Subject: [PATCH 2/3] set pagination to 10 for tests --- integrations/api_repo_test.go | 9 ++++++++- integrations/release_test.go | 7 +++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/integrations/api_repo_test.go b/integrations/api_repo_test.go index d57e5daaf3e5b..cea480c8e19de 100644 --- a/integrations/api_repo_test.go +++ b/integrations/api_repo_test.go @@ -13,6 +13,7 @@ import ( "testing" "code.gitea.io/gitea/models" + "code.gitea.io/gitea/modules/setting" api "code.gitea.io/gitea/modules/structs" "github.com/stretchr/testify/assert" @@ -57,6 +58,12 @@ func TestAPISearchRepo(t *testing.T) { user4 := models.AssertExistsAndLoadBean(t, &models.User{ID: 20}).(*models.User) orgUser := models.AssertExistsAndLoadBean(t, &models.User{ID: 17}).(*models.User) + oldApiDefaultNum := setting.API.DefaultPagingNum + defer func() { + setting.API.DefaultPagingNum = oldApiDefaultNum + }() + setting.API.DefaultPagingNum = 10 + // Map of expected results, where key is user for login type expectedResults map[*models.User]struct { count int @@ -79,7 +86,7 @@ func TestAPISearchRepo(t *testing.T) { user: {count: 10}, user2: {count: 10}}, }, - {name: "RepositoriesDefaultMax10", requestURL: "/api/v1/repos/search?default&private=false", expectedResults: expectedResults{ + {name: "RepositoriesDefault", requestURL: "/api/v1/repos/search?default&private=false", expectedResults: expectedResults{ nil: {count: 10}, user: {count: 10}, user2: {count: 10}}, diff --git a/integrations/release_test.go b/integrations/release_test.go index 176f83d55ae40..4c9ba783e7670 100644 --- a/integrations/release_test.go +++ b/integrations/release_test.go @@ -10,6 +10,7 @@ import ( "testing" "time" + "code.gitea.io/gitea/modules/setting" "code.gitea.io/gitea/modules/test" "github.com/stretchr/testify/assert" @@ -106,6 +107,12 @@ func TestCreateReleaseDraft(t *testing.T) { func TestCreateReleasePaging(t *testing.T) { defer prepareTestEnv(t)() + oldApiDefaultNum := setting.API.DefaultPagingNum + defer func() { + setting.API.DefaultPagingNum = oldApiDefaultNum + }() + setting.API.DefaultPagingNum = 10 + session := loginUser(t, "user2") // Create enaugh releases to have paging for i := 0; i < 12; i++ { From 75832f5edcc7eb0d936655c36b818cd0c4b8d763 Mon Sep 17 00:00:00 2001 From: CirnoT <1447794+CirnoT@users.noreply.github.com> Date: Mon, 8 Jun 2020 19:49:36 +0200 Subject: [PATCH 3/3] lint --- integrations/api_repo_test.go | 4 ++-- integrations/release_test.go | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/integrations/api_repo_test.go b/integrations/api_repo_test.go index cea480c8e19de..7797b8f498c43 100644 --- a/integrations/api_repo_test.go +++ b/integrations/api_repo_test.go @@ -58,9 +58,9 @@ func TestAPISearchRepo(t *testing.T) { user4 := models.AssertExistsAndLoadBean(t, &models.User{ID: 20}).(*models.User) orgUser := models.AssertExistsAndLoadBean(t, &models.User{ID: 17}).(*models.User) - oldApiDefaultNum := setting.API.DefaultPagingNum + oldAPIDefaultNum := setting.API.DefaultPagingNum defer func() { - setting.API.DefaultPagingNum = oldApiDefaultNum + setting.API.DefaultPagingNum = oldAPIDefaultNum }() setting.API.DefaultPagingNum = 10 diff --git a/integrations/release_test.go b/integrations/release_test.go index 4c9ba783e7670..4d2260d8844e8 100644 --- a/integrations/release_test.go +++ b/integrations/release_test.go @@ -107,9 +107,9 @@ func TestCreateReleaseDraft(t *testing.T) { func TestCreateReleasePaging(t *testing.T) { defer prepareTestEnv(t)() - oldApiDefaultNum := setting.API.DefaultPagingNum + oldAPIDefaultNum := setting.API.DefaultPagingNum defer func() { - setting.API.DefaultPagingNum = oldApiDefaultNum + setting.API.DefaultPagingNum = oldAPIDefaultNum }() setting.API.DefaultPagingNum = 10