summaryrefslogtreecommitdiff
path: root/spec/graphql/types
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-04-03 18:10:03 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-04-03 18:10:03 +0000
commitb6847c621ff246e6abceb90545d5a608318762d6 (patch)
tree460da2a6c2be2e4f5164c2bba1851b66260f850d /spec/graphql/types
parentc08d9c22569d1c9e7c7737e183969593394133d9 (diff)
downloadgitlab-ce-b6847c621ff246e6abceb90545d5a608318762d6.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/graphql/types')
-rw-r--r--spec/graphql/types/snippet_type_spec.rb52
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