Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-12-02 06:09:38 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-12-02 06:09:38 +0300
commit408af4d5cf3a3893f8431d4d28821c766ab92bec (patch)
tree481b4b471e09a2de078e5aae3982a53a2a51bb97 /doc/development/graphql_guide
parentf3506a4deee10c8b0e3c57ed2019d1df9c521258 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'doc/development/graphql_guide')
-rw-r--r--doc/development/graphql_guide/pagination.md24
1 files changed, 13 insertions, 11 deletions
diff --git a/doc/development/graphql_guide/pagination.md b/doc/development/graphql_guide/pagination.md
index 1f659bffab3..130ed5721f3 100644
--- a/doc/development/graphql_guide/pagination.md
+++ b/doc/development/graphql_guide/pagination.md
@@ -294,28 +294,30 @@ The shared example requires certain `let` variables and methods to be set up:
```ruby
describe 'sorting and pagination' do
- let(:sort_project) { create(:project, :public) }
+ let_it_be(:sort_project) { create(:project, :public) }
let(:data_path) { [:project, :issues] }
- def pagination_query(params, page_info)
- graphql_query_for(
- 'project',
- { 'fullPath' => sort_project.full_path },
- query_graphql_field('issues', params, "#{page_info} edges { node { id } }")
+ def pagination_query(params)
+ graphql_query_for( :project, { full_path: sort_project.full_path },
+ query_nodes(:issues, :id, include_pagination_info: true, args: params))
)
end
- def pagination_results_data(data)
- data.map { |issue| issue.dig('node', 'iid').to_i }
+ def pagination_results_data(nodes)
+ nodes.map { |issue| issue['iid'].to_i }
end
context 'when sorting by weight' do
- ...
+ let_it_be(:issues) { make_some_issues_with_weights }
+
context 'when ascending' do
+ let(:ordered_issues) { issues.sort_by(&:weight) }
+
it_behaves_like 'sorted paginated query' do
- let(:sort_param) { 'WEIGHT_ASC' }
+ let(:sort_param) { :WEIGHT_ASC }
let(:first_param) { 2 }
- let(:expected_results) { [weight_issue3.iid, weight_issue5.iid, weight_issue1.iid, weight_issue4.iid, weight_issue2.iid] }
+ let(:expected_results) { ordered_issues.map(&:iid) }
end
end
+ end
```