diff options
Diffstat (limited to 'spec/graphql/resolvers/branch_commit_resolver_spec.rb')
-rw-r--r-- | spec/graphql/resolvers/branch_commit_resolver_spec.rb | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/spec/graphql/resolvers/branch_commit_resolver_spec.rb b/spec/graphql/resolvers/branch_commit_resolver_spec.rb index 78d4959c3f9..346c9e01088 100644 --- a/spec/graphql/resolvers/branch_commit_resolver_spec.rb +++ b/spec/graphql/resolvers/branch_commit_resolver_spec.rb @@ -12,7 +12,11 @@ RSpec.describe Resolvers::BranchCommitResolver do describe '#resolve' do it 'resolves commit' do - is_expected.to eq(repository.commits('master', limit: 1).last) + expect(sync(commit)).to eq(repository.commits('master', limit: 1).last) + end + + it 'sets project container' do + expect(sync(commit).container).to eq(repository.project) end context 'when branch does not exist' do @@ -22,5 +26,19 @@ RSpec.describe Resolvers::BranchCommitResolver do is_expected.to be_nil end end + + it 'is N+1 safe' do + commit_a = repository.commits('master', limit: 1).last + commit_b = repository.commits('spooky-stuff', limit: 1).last + + commits = batch_sync(max_queries: 1) do + [ + resolve(described_class, obj: branch), + resolve(described_class, obj: repository.find_branch('spooky-stuff')) + ] + end + + expect(commits).to contain_exactly(commit_a, commit_b) + end end end |