From e10437de407a0782cd49cf5f341517c5b17fdd5e Mon Sep 17 00:00:00 2001 From: Ahmad Sherif Date: Tue, 5 Sep 2017 17:29:45 +0000 Subject: Migrate Gitlab::Git::Repository#find_branch to Gitaly --- spec/lib/gitlab/git/repository_spec.rb | 38 +++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 14 deletions(-) (limited to 'spec') diff --git a/spec/lib/gitlab/git/repository_spec.rb b/spec/lib/gitlab/git/repository_spec.rb index 4cfb4b7d357..08959e7bc16 100644 --- a/spec/lib/gitlab/git/repository_spec.rb +++ b/spec/lib/gitlab/git/repository_spec.rb @@ -916,27 +916,37 @@ describe Gitlab::Git::Repository, seed_helper: true do end describe '#find_branch' do - it 'should return a Branch for master' do - branch = repository.find_branch('master') + shared_examples 'finding a branch' do + it 'should return a Branch for master' do + branch = repository.find_branch('master') - expect(branch).to be_a_kind_of(Gitlab::Git::Branch) - expect(branch.name).to eq('master') - end + expect(branch).to be_a_kind_of(Gitlab::Git::Branch) + expect(branch.name).to eq('master') + end - it 'should handle non-existent branch' do - branch = repository.find_branch('this-is-garbage') + it 'should handle non-existent branch' do + branch = repository.find_branch('this-is-garbage') - expect(branch).to eq(nil) + expect(branch).to eq(nil) + end end - it 'should reload Rugged::Repository and return master' do - expect(Rugged::Repository).to receive(:new).twice.and_call_original + context 'when Gitaly find_branch feature is enabled' do + it_behaves_like 'finding a branch' + end - repository.find_branch('master') - branch = repository.find_branch('master', force_reload: true) + context 'when Gitaly find_branch feature is disabled', skip_gitaly_mock: true do + it_behaves_like 'finding a branch' - expect(branch).to be_a_kind_of(Gitlab::Git::Branch) - expect(branch.name).to eq('master') + it 'should reload Rugged::Repository and return master' do + expect(Rugged::Repository).to receive(:new).twice.and_call_original + + repository.find_branch('master') + branch = repository.find_branch('master', force_reload: true) + + expect(branch).to be_a_kind_of(Gitlab::Git::Branch) + expect(branch.name).to eq('master') + end end end -- cgit v1.2.1