From b6847c621ff246e6abceb90545d5a608318762d6 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Fri, 3 Apr 2020 18:10:03 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- spec/graphql/types/snippet_type_spec.rb | 52 +++++++++++++++++++++------------ 1 file changed, 33 insertions(+), 19 deletions(-) (limited to 'spec/graphql') 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 -- cgit v1.2.1