Commit 0533f830 authored by manojmj's avatar manojmj

Fix bug in group security dashboard

parent 7ca0cc64
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
module Groups::SecurityFeaturesHelper module Groups::SecurityFeaturesHelper
def group_level_security_dashboard_available?(group) def group_level_security_dashboard_available?(group)
group.feature_available?(:security_dashboard) can?(current_user, :read_group_security_dashboard, group)
end end
def group_level_compliance_dashboard_available?(group) def group_level_compliance_dashboard_available?(group)
......
...@@ -9,18 +9,19 @@ RSpec.describe Groups::SecurityFeaturesHelper do ...@@ -9,18 +9,19 @@ RSpec.describe Groups::SecurityFeaturesHelper do
let_it_be(:user, refind: true) { create(:user) } let_it_be(:user, refind: true) { create(:user) }
before do before do
allow(helper).to receive(:can?) { |*args| Ability.allowed?(*args) }
allow(helper).to receive(:current_user).and_return(user) allow(helper).to receive(:current_user).and_return(user)
end end
describe '#group_level_security_dashboard_available?' do describe '#group_level_security_dashboard_available?' do
where(:security_dashboard_feature_enabled, :result) do where(:read_group_security_dashboard_permission, :result) do
true | true
false | false false | false
true | true
end end
with_them do with_them do
before do before do
stub_licensed_features(security_dashboard: security_dashboard_feature_enabled) allow(helper).to receive(:can?).with(user, :read_group_security_dashboard, group).and_return(read_group_security_dashboard_permission)
end end
it 'returns the expected result' do it 'returns the expected result' do
......
...@@ -109,11 +109,18 @@ RSpec.describe 'layouts/nav/sidebar/_group' do ...@@ -109,11 +109,18 @@ RSpec.describe 'layouts/nav/sidebar/_group' do
stub_licensed_features(security_dashboard: true) stub_licensed_features(security_dashboard: true)
end end
it 'is visible' do context 'when the user has access to Compliance dashboard' do
render before do
group.add_developer(user)
allow(view).to receive(:current_user).and_return(user)
end
expect(rendered).to have_link 'Security & Compliance' it 'is visible' do
expect(rendered).to have_link 'Security' render
expect(rendered).to have_link 'Security & Compliance'
expect(rendered).to have_link 'Security'
end
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment