diff options
author | Nermin Vehabovic <nermin.vehabovic90@gmail.com> | 2019-02-16 16:57:14 +0100 |
---|---|---|
committer | mfluharty <mfluharty@gitlab.com> | 2019-02-20 11:20:33 -0700 |
commit | 1e96de8f1921907e42c6a89130d405f5b5caf876 (patch) | |
tree | d3db0854a8c581b0ff65890475f24509219e4343 | |
parent | d3c60a25c8e9494970d57b467f6f558aa31dd904 (diff) | |
download | gitlab-ce-1e96de8f1921907e42c6a89130d405f5b5caf876.tar.gz |
Added: Specs for sort page break tie in the merge request list API
-rw-r--r-- | spec/support/shared_examples/requests/api/merge_requests_list.rb | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/spec/support/shared_examples/requests/api/merge_requests_list.rb b/spec/support/shared_examples/requests/api/merge_requests_list.rb index 453f42251c8..6713ec47ace 100644 --- a/spec/support/shared_examples/requests/api/merge_requests_list.rb +++ b/spec/support/shared_examples/requests/api/merge_requests_list.rb @@ -257,6 +257,38 @@ shared_examples 'merge requests list' do expect(response_dates).to eq(response_dates.sort.reverse) end + context '2 merge requests with equal created_at' do + let!(:closed_mr2) do + create :merge_request, + state: 'closed', + milestone: milestone1, + author: user, + assignee: user, + source_project: project, + target_project: project, + title: "Test", + created_at: @mr_earlier.created_at + end + + it 'page breaks first page correctly' do + get api("#{endpoint_path}?sort=desc&per_page=4", user) + + response_ids = json_response.map { |merge_request| merge_request['id'] } + + expect(response_ids).to include(closed_mr2.id) + expect(response_ids).not_to include(@mr_earlier.id) + end + + it 'page breaks second page correctly' do + get api("#{endpoint_path}?sort=desc&per_page=4&page=2", user) + + response_ids = json_response.map { |merge_request| merge_request['id'] } + + expect(response_ids).not_to include(closed_mr2.id) + expect(response_ids).to include(@mr_earlier.id) + end + end + it 'returns an array of merge_requests ordered by updated_at' do path = endpoint_path + '?order_by=updated_at' |