diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-04-03 18:10:03 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-04-03 18:10:03 +0000 |
commit | b6847c621ff246e6abceb90545d5a608318762d6 (patch) | |
tree | 460da2a6c2be2e4f5164c2bba1851b66260f850d /spec/graphql | |
parent | c08d9c22569d1c9e7c7737e183969593394133d9 (diff) | |
download | gitlab-ce-b6847c621ff246e6abceb90545d5a608318762d6.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/graphql')
-rw-r--r-- | spec/graphql/types/snippet_type_spec.rb | 52 |
1 files changed, 33 insertions, 19 deletions
diff --git a/spec/graphql/types/snippet_type_spec.rb b/spec/graphql/types/snippet_type_spec.rb index ba0152ae983..6e580711fda 100644 --- a/spec/graphql/types/snippet_type_spec.rb +++ b/spec/graphql/types/snippet_type_spec.rb @@ -27,25 +27,9 @@ describe GitlabSchema.types['Snippet'] do end end - describe 'Repository URLs' do - let(:query) do - %( - { - snippets { - nodes { - sshUrlToRepo - httpUrlToRepo - } - } - } - ) - end - let(:response) { subject.dig('data', 'snippets', 'nodes')[0] } - - subject { GitlabSchema.execute(query, context: { current_user: user }).as_json } - + shared_examples 'snippets with repositories' do context 'when snippet has repository' do - let!(:snippet) { create(:personal_snippet, :repository, :public, author: user) } + let_it_be(:snippet) { create(:personal_snippet, :repository, :public, author: user) } it 'responds with repository URLs' do expect(response['sshUrlToRepo']).to eq(snippet.ssh_url_to_repo) @@ -60,14 +44,44 @@ describe GitlabSchema.types['Snippet'] do it_behaves_like 'response without repository URLs' end end + end + shared_examples 'snippets without repositories' do context 'when snippet does not have a repository' do - let!(:snippet) { create(:personal_snippet, :public, author: user) } + let_it_be(:snippet) { create(:personal_snippet, :public, author: user) } it_behaves_like 'response without repository URLs' end end + describe 'Repository URLs' do + let(:query) do + %( + { + snippets { + nodes { + sshUrlToRepo + httpUrlToRepo + } + } + } + ) + end + let(:response) { subject.dig('data', 'snippets', 'nodes')[0] } + + subject { GitlabSchema.execute(query, context: { current_user: user }).as_json } + + context 'when RequestStore is disabled' do + it_behaves_like 'snippets with repositories' + it_behaves_like 'snippets without repositories' + end + + context 'when RequestStore is enabled', :request_store do + it_behaves_like 'snippets with repositories' + it_behaves_like 'snippets without repositories' + end + end + describe '#blob' do let(:query_blob) { subject.dig('data', 'snippets', 'edges')[0]['node']['blob'] } let(:query) do |