Skip to content

Commit 279e4e2

Browse files
noerwlunnywxiaoguang
authored
Increase default item listing size ISSUE_PAGING_NUM to 20 (#20547)
* increase default page sizes to 20 * adjust docs to reflect that the setting is used all over the place * fix tests Co-authored-by: Lunny Xiao <[email protected]> Co-authored-by: wxiaoguang <[email protected]>
1 parent 61aafb9 commit 279e4e2

File tree

5 files changed

+53
-53
lines changed

5 files changed

+53
-53
lines changed

custom/conf/app.example.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1083,7 +1083,7 @@ ROUTER = console
10831083
;EXPLORE_PAGING_NUM = 20
10841084
;;
10851085
;; Number of issues that are displayed on one page
1086-
;ISSUE_PAGING_NUM = 10
1086+
;ISSUE_PAGING_NUM = 20
10871087
;;
10881088
;; Number of maximum commits displayed in one activity feed
10891089
;FEED_MAX_COMMIT_NUM = 5

docs/content/doc/advanced/config-cheat-sheet.en-us.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ The following configuration set `Content-Type: application/vnd.android.package-a
172172
## UI (`ui`)
173173

174174
- `EXPLORE_PAGING_NUM`: **20**: Number of repositories that are shown in one explore page.
175-
- `ISSUE_PAGING_NUM`: **10**: Number of issues that are shown in one page (for all pages that list issues).
175+
- `ISSUE_PAGING_NUM`: **20**: Number of issues that are shown in one page (for all pages that list issues, milestones, projects).
176176
- `MEMBERS_PAGING_NUM`: **20**: Number of members that are shown in organization members.
177177
- `FEED_MAX_COMMIT_NUM`: **5**: Number of maximum commits shown in one activity feed.
178178
- `FEED_PAGING_NUM`: **20**: Number of items that are displayed in home feed.

integrations/api_issue_test.go

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616
repo_model "code.gitea.io/gitea/models/repo"
1717
"code.gitea.io/gitea/models/unittest"
1818
user_model "code.gitea.io/gitea/models/user"
19+
"code.gitea.io/gitea/modules/setting"
1920
api "code.gitea.io/gitea/modules/structs"
2021

2122
"github.com/stretchr/testify/assert"
@@ -171,19 +172,21 @@ func TestAPISearchIssues(t *testing.T) {
171172

172173
token := getUserToken(t, "user2")
173174

175+
// as this API was used in the frontend, it uses UI page size
176+
expectedIssueCount := 15 // from the fixtures
177+
if expectedIssueCount > setting.UI.IssuePagingNum {
178+
expectedIssueCount = setting.UI.IssuePagingNum
179+
}
180+
174181
link, _ := url.Parse("/api/v1/repos/issues/search")
175-
req := NewRequest(t, "GET", link.String()+"?token="+token)
176-
resp := MakeRequest(t, req, http.StatusOK)
182+
query := url.Values{"token": {getUserToken(t, "user1")}}
177183
var apiIssues []*api.Issue
178-
DecodeJSON(t, resp, &apiIssues)
179-
assert.Len(t, apiIssues, 10)
180184

181-
query := url.Values{"token": {token}}
182185
link.RawQuery = query.Encode()
183-
req = NewRequest(t, "GET", link.String())
184-
resp = MakeRequest(t, req, http.StatusOK)
186+
req := NewRequest(t, "GET", link.String())
187+
resp := MakeRequest(t, req, http.StatusOK)
185188
DecodeJSON(t, resp, &apiIssues)
186-
assert.Len(t, apiIssues, 10)
189+
assert.Len(t, apiIssues, expectedIssueCount)
187190

188191
since := "2000-01-01T00%3A50%3A01%2B00%3A00" // 946687801
189192
before := time.Unix(999307200, 0).Format(time.RFC3339)
@@ -211,14 +214,15 @@ func TestAPISearchIssues(t *testing.T) {
211214
resp = MakeRequest(t, req, http.StatusOK)
212215
DecodeJSON(t, resp, &apiIssues)
213216
assert.EqualValues(t, "17", resp.Header().Get("X-Total-Count"))
214-
assert.Len(t, apiIssues, 10) // there are more but 10 is page item limit
217+
assert.Len(t, apiIssues, 17)
215218

216-
query.Add("limit", "20")
219+
query.Add("limit", "10")
217220
link.RawQuery = query.Encode()
218221
req = NewRequest(t, "GET", link.String())
219222
resp = MakeRequest(t, req, http.StatusOK)
220223
DecodeJSON(t, resp, &apiIssues)
221-
assert.Len(t, apiIssues, 17)
224+
assert.EqualValues(t, "17", resp.Header().Get("X-Total-Count"))
225+
assert.Len(t, apiIssues, 10)
222226

223227
query = url.Values{"assigned": {"true"}, "state": {"all"}, "token": {token}}
224228
link.RawQuery = query.Encode()
@@ -266,23 +270,21 @@ func TestAPISearchIssues(t *testing.T) {
266270
func TestAPISearchIssuesWithLabels(t *testing.T) {
267271
defer prepareTestEnv(t)()
268272

269-
token := getUserToken(t, "user1")
273+
// as this API was used in the frontend, it uses UI page size
274+
expectedIssueCount := 15 // from the fixtures
275+
if expectedIssueCount > setting.UI.IssuePagingNum {
276+
expectedIssueCount = setting.UI.IssuePagingNum
277+
}
270278

271279
link, _ := url.Parse("/api/v1/repos/issues/search")
272-
req := NewRequest(t, "GET", link.String()+"?token="+token)
273-
resp := MakeRequest(t, req, http.StatusOK)
280+
query := url.Values{"token": {getUserToken(t, "user1")}}
274281
var apiIssues []*api.Issue
275-
DecodeJSON(t, resp, &apiIssues)
276-
277-
assert.Len(t, apiIssues, 10)
278282

279-
query := url.Values{}
280-
query.Add("token", token)
281283
link.RawQuery = query.Encode()
282-
req = NewRequest(t, "GET", link.String())
283-
resp = MakeRequest(t, req, http.StatusOK)
284+
req := NewRequest(t, "GET", link.String())
285+
resp := MakeRequest(t, req, http.StatusOK)
284286
DecodeJSON(t, resp, &apiIssues)
285-
assert.Len(t, apiIssues, 10)
287+
assert.Len(t, apiIssues, expectedIssueCount)
286288

287289
query.Add("labels", "label1")
288290
link.RawQuery = query.Encode()

integrations/issue_test.go

Lines changed: 25 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -356,17 +356,17 @@ func TestSearchIssues(t *testing.T) {
356356

357357
session := loginUser(t, "user2")
358358

359+
expectedIssueCount := 15 // from the fixtures
360+
if expectedIssueCount > setting.UI.IssuePagingNum {
361+
expectedIssueCount = setting.UI.IssuePagingNum
362+
}
363+
359364
link, _ := url.Parse("/issues/search")
360365
req := NewRequest(t, "GET", link.String())
361366
resp := session.MakeRequest(t, req, http.StatusOK)
362367
var apiIssues []*api.Issue
363368
DecodeJSON(t, resp, &apiIssues)
364-
assert.Len(t, apiIssues, 10)
365-
366-
req = NewRequest(t, "GET", link.String())
367-
resp = session.MakeRequest(t, req, http.StatusOK)
368-
DecodeJSON(t, resp, &apiIssues)
369-
assert.Len(t, apiIssues, 10)
369+
assert.Len(t, apiIssues, expectedIssueCount)
370370

371371
since := "2000-01-01T00%3A50%3A01%2B00%3A00" // 946687801
372372
before := time.Unix(999307200, 0).Format(time.RFC3339)
@@ -394,14 +394,15 @@ func TestSearchIssues(t *testing.T) {
394394
resp = session.MakeRequest(t, req, http.StatusOK)
395395
DecodeJSON(t, resp, &apiIssues)
396396
assert.EqualValues(t, "17", resp.Header().Get("X-Total-Count"))
397-
assert.Len(t, apiIssues, 10) // there are more but 10 is page item limit
397+
assert.Len(t, apiIssues, 17)
398398

399-
query.Add("limit", "20")
399+
query.Add("limit", "5")
400400
link.RawQuery = query.Encode()
401401
req = NewRequest(t, "GET", link.String())
402402
resp = session.MakeRequest(t, req, http.StatusOK)
403403
DecodeJSON(t, resp, &apiIssues)
404-
assert.Len(t, apiIssues, 17)
404+
assert.EqualValues(t, "17", resp.Header().Get("X-Total-Count"))
405+
assert.Len(t, apiIssues, 5)
405406

406407
query = url.Values{"assigned": {"true"}, "state": {"all"}}
407408
link.RawQuery = query.Encode()
@@ -449,45 +450,42 @@ func TestSearchIssues(t *testing.T) {
449450
func TestSearchIssuesWithLabels(t *testing.T) {
450451
defer prepareTestEnv(t)()
451452

452-
token := getUserToken(t, "user1")
453+
expectedIssueCount := 15 // from the fixtures
454+
if expectedIssueCount > setting.UI.IssuePagingNum {
455+
expectedIssueCount = setting.UI.IssuePagingNum
456+
}
453457

454-
link, _ := url.Parse("/api/v1/repos/issues/search?token=" + token)
455-
req := NewRequest(t, "GET", link.String())
456-
resp := MakeRequest(t, req, http.StatusOK)
458+
session := loginUser(t, "user1")
459+
link, _ := url.Parse("/issues/search")
460+
query := url.Values{}
457461
var apiIssues []*api.Issue
458-
DecodeJSON(t, resp, &apiIssues)
459-
460-
assert.Len(t, apiIssues, 10)
461462

462-
query := url.Values{
463-
"token": []string{token},
464-
}
465463
link.RawQuery = query.Encode()
466-
req = NewRequest(t, "GET", link.String())
467-
resp = MakeRequest(t, req, http.StatusOK)
464+
req := NewRequest(t, "GET", link.String())
465+
resp := session.MakeRequest(t, req, http.StatusOK)
468466
DecodeJSON(t, resp, &apiIssues)
469-
assert.Len(t, apiIssues, 10)
467+
assert.Len(t, apiIssues, expectedIssueCount)
470468

471469
query.Add("labels", "label1")
472470
link.RawQuery = query.Encode()
473471
req = NewRequest(t, "GET", link.String())
474-
resp = MakeRequest(t, req, http.StatusOK)
472+
resp = session.MakeRequest(t, req, http.StatusOK)
475473
DecodeJSON(t, resp, &apiIssues)
476474
assert.Len(t, apiIssues, 2)
477475

478476
// multiple labels
479477
query.Set("labels", "label1,label2")
480478
link.RawQuery = query.Encode()
481479
req = NewRequest(t, "GET", link.String())
482-
resp = MakeRequest(t, req, http.StatusOK)
480+
resp = session.MakeRequest(t, req, http.StatusOK)
483481
DecodeJSON(t, resp, &apiIssues)
484482
assert.Len(t, apiIssues, 2)
485483

486484
// an org label
487485
query.Set("labels", "orglabel4")
488486
link.RawQuery = query.Encode()
489487
req = NewRequest(t, "GET", link.String())
490-
resp = MakeRequest(t, req, http.StatusOK)
488+
resp = session.MakeRequest(t, req, http.StatusOK)
491489
DecodeJSON(t, resp, &apiIssues)
492490
assert.Len(t, apiIssues, 1)
493491

@@ -496,15 +494,15 @@ func TestSearchIssuesWithLabels(t *testing.T) {
496494
query.Add("state", "all")
497495
link.RawQuery = query.Encode()
498496
req = NewRequest(t, "GET", link.String())
499-
resp = MakeRequest(t, req, http.StatusOK)
497+
resp = session.MakeRequest(t, req, http.StatusOK)
500498
DecodeJSON(t, resp, &apiIssues)
501499
assert.Len(t, apiIssues, 2)
502500

503501
// org and repo label which share the same issue
504502
query.Set("labels", "label1,orglabel4")
505503
link.RawQuery = query.Encode()
506504
req = NewRequest(t, "GET", link.String())
507-
resp = MakeRequest(t, req, http.StatusOK)
505+
resp = session.MakeRequest(t, req, http.StatusOK)
508506
DecodeJSON(t, resp, &apiIssues)
509507
assert.Len(t, apiIssues, 2)
510508
}

modules/setting/setting.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -262,8 +262,8 @@ var (
262262
}{
263263
ExplorePagingNum: 20,
264264
SitemapPagingNum: 20,
265-
IssuePagingNum: 10,
266-
RepoSearchPagingNum: 10,
265+
IssuePagingNum: 20,
266+
RepoSearchPagingNum: 20,
267267
MembersPagingNum: 20,
268268
FeedMaxCommitNum: 5,
269269
FeedPagingNum: 20,

0 commit comments

Comments
 (0)