Merge branch '9841-geo-unable-to-compare-branches-on-secondary' into 'master'

Allow users to compare branches on a read-only instance

See merge request gitlab-org/gitlab-ce!25414
This commit is contained in:
James Lopez 2019-02-22 08:27:38 +00:00
commit 9c2bcca2e5
3 changed files with 38 additions and 2 deletions

View file

@ -53,9 +53,8 @@
= _('Merge request')
- if branch.name != @repository.root_ref
= link_to project_compare_index_path(@project, from: @repository.root_ref, to: branch.name),
= link_to project_compare_path(@project, @repository.root_ref, branch.name),
class: "btn btn-default #{'prepend-left-10' unless merge_project}",
method: :post,
title: s_('Branches|Compare') do
= s_('Branches|Compare')

View file

@ -0,0 +1,5 @@
---
title: Allow users to compare branches on a read-only instance
merge_request: 25414
author:
type: fixed

View file

@ -229,6 +229,38 @@ describe 'Branches' do
end
end
describe 'comparing branches' do
before do
sign_in(user)
project.add_developer(user)
end
shared_examples 'compares branches' do
it 'compares branches' do
visit project_branches_path(project)
page.within first('.all-branches li') do
click_link 'Compare'
end
expect(page).to have_content 'Commits'
expect(page).to have_link 'Create merge request'
end
end
context 'on a read-only instance' do
before do
allow(Gitlab::Database).to receive(:read_only?).and_return(true)
end
it_behaves_like 'compares branches'
end
context 'on a read-write instance' do
it_behaves_like 'compares branches'
end
end
def sorted_branches(repository, count:, sort_by:, state: nil)
branches = repository.branches_sorted_by(sort_by)
branches = branches.select { |b| state == 'active' ? b.active? : b.stale? } if state