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>2021-05-07 21:10:21 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-05-07 21:10:21 +0300
commit1572e2a376c0315a0b910bb06e2f2d08cae43adb (patch)
tree850c1d90c6cdd107e51061719db07257f0331425 /spec/graphql
parent05b83be3ee097da8e71c8655d8f9f2c179cc3f7c (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/graphql')
-rw-r--r--spec/graphql/resolvers/repository_branch_names_resolver_spec.rb45
1 files changed, 33 insertions, 12 deletions
diff --git a/spec/graphql/resolvers/repository_branch_names_resolver_spec.rb b/spec/graphql/resolvers/repository_branch_names_resolver_spec.rb
index 398dd7a2e2e..004e0411e51 100644
--- a/spec/graphql/resolvers/repository_branch_names_resolver_spec.rb
+++ b/spec/graphql/resolvers/repository_branch_names_resolver_spec.rb
@@ -8,29 +8,50 @@ RSpec.describe Resolvers::RepositoryBranchNamesResolver do
let(:project) { create(:project, :repository) }
describe '#resolve' do
- subject(:resolve_branch_names) do
- resolve(
- described_class,
- obj: project.repository,
- args: { search_pattern: pattern },
- ctx: { current_user: project.creator }
- )
- end
-
context 'with empty search pattern' do
let(:pattern) { '' }
it 'returns nil' do
- expect(resolve_branch_names).to eq(nil)
+ expect(resolve_branch_names(pattern, 0, 100)).to eq(nil)
end
end
context 'with a valid search pattern' do
- let(:pattern) { 'mas*' }
+ let(:pattern) { 'snippet/*' }
it 'returns matching branches' do
- expect(resolve_branch_names).to match_array(['master'])
+ expect(resolve_branch_names(pattern, 0, 100)).to contain_exactly(
+ 'snippet/edit-file',
+ 'snippet/multiple-files',
+ 'snippet/no-files',
+ 'snippet/rename-and-edit-file',
+ 'snippet/single-file'
+ )
+ end
+
+ it 'properly offsets and limits branch name results' do
+ starting_names = resolve_branch_names(pattern, 0, 3)
+ offset_names = resolve_branch_names(pattern, 3, 2)
+
+ expect(starting_names.count).to eq(3)
+ expect(offset_names.count).to eq(2)
+
+ expect(offset_names).not_to include(*starting_names)
+
+ all_names = resolve_branch_names(pattern, 0, 100)
+ expect(all_names).to contain_exactly(*starting_names, *offset_names)
end
end
end
+
+ private
+
+ def resolve_branch_names(pattern, offset, limit)
+ resolve(
+ described_class,
+ obj: project.repository,
+ args: { search_pattern: pattern, offset: offset, limit: limit },
+ ctx: { current_user: project.creator }
+ )
+ end
end