diff options
Diffstat (limited to 'spec/helpers/projects_helper_spec.rb')
-rw-r--r-- | spec/helpers/projects_helper_spec.rb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/helpers/projects_helper_spec.rb b/spec/helpers/projects_helper_spec.rb index 554cb861563..3716879c458 100644 --- a/spec/helpers/projects_helper_spec.rb +++ b/spec/helpers/projects_helper_spec.rb @@ -799,4 +799,46 @@ 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 + + describe '#metrics_external_dashboard_url' do + let(:project) { create(:project) } + + before do + helper.instance_variable_set(:@project, project) + end + + context 'metrics_setting exists' do + it 'returns external_dashboard_url' do + metrics_setting = create(:project_metrics_setting, project: project) + + expect(helper.metrics_external_dashboard_url).to eq(metrics_setting.external_dashboard_url) + end + end + + context 'metrics_setting does not exist' do + it 'returns nil' do + expect(helper.metrics_external_dashboard_url).to eq(nil) + end + end + end end |