Resolve CE/EE diffs in new proj member import

Part of single codebase changes.
This commit is contained in:
Luke Bennett 2019-05-10 23:00:36 +01:00
parent 4828ef52ed
commit fae745c342
No known key found for this signature in database
GPG Key ID: 402ED51FB5D306C2
3 changed files with 26 additions and 1 deletions

View File

@ -315,6 +315,10 @@ module ProjectsHelper
) % { default_label: default_label }
end
def can_import_members?
Ability.allowed?(current_user, :admin_project_member, @project)
end
private
def get_project_nav_tabs(project, current_user)

View File

@ -19,4 +19,5 @@
= text_field_tag :expires_at, nil, class: 'form-control js-access-expiration-date', placeholder: 'Expiration date'
%i.clear-icon.js-clear-input
= f.submit _("Add to project"), class: "btn btn-success qa-add-member-button"
= link_to _("Import"), import_project_project_members_path(@project), class: "btn btn-default", title: _("Import members from another project")
- if can_import_members?
= link_to _("Import"), import_project_project_members_path(@project), class: "btn btn-default", title: _("Import members from another project")

View File

@ -799,4 +799,24 @@ describe ProjectsHelper do
it { is_expected.to eq(result) }
end
end
describe '#can_import_members?' do
let(:project) { create(:project) }
let(:user) { create(:user) }
let(:owner) { project.owner }
before do
helper.instance_variable_set(:@project, project)
end
it 'returns false if user cannot admin_project_member' do
allow(helper).to receive(:current_user) { user }
expect(helper.can_import_members?).to eq false
end
it 'returns true if user can admin_project_member' do
allow(helper).to receive(:current_user) { owner }
expect(helper.can_import_members?).to eq true
end
end
end