diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-11-17 11:33:21 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-11-17 11:33:21 +0000 |
commit | 7021455bd1ed7b125c55eb1b33c5a01f2bc55ee0 (patch) | |
tree | 5bdc2229f5198d516781f8d24eace62fc7e589e9 /spec/lib/sidebars | |
parent | 185b095e93520f96e9cfc31d9c3e69b498cdab7c (diff) | |
download | gitlab-ce-7021455bd1ed7b125c55eb1b33c5a01f2bc55ee0.tar.gz |
Add latest changes from gitlab-org/gitlab@15-6-stable-eev15.6.0-rc42
Diffstat (limited to 'spec/lib/sidebars')
-rw-r--r-- | spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb | 46 | ||||
-rw-r--r-- | spec/lib/sidebars/projects/menus/monitor_menu_spec.rb | 14 |
2 files changed, 46 insertions, 14 deletions
diff --git a/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb b/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb index 2da7d324708..64408ac3b88 100644 --- a/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb +++ b/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb @@ -23,6 +23,52 @@ RSpec.describe Sidebars::Projects::Menus::InfrastructureMenu do expect(subject.render?).to be true end end + + describe 'behavior based on access level setting' do + using RSpec::Parameterized::TableSyntax + + let_it_be(:project) { create(:project) } + let(:enabled) { Featurable::PRIVATE } + let(:disabled) { Featurable::DISABLED } + + where(:operations_access_level, :infrastructure_access_level, :render) do + ref(:disabled) | ref(:enabled) | true + ref(:disabled) | ref(:disabled) | false + ref(:enabled) | ref(:enabled) | true + ref(:enabled) | ref(:disabled) | false + end + + with_them do + it 'renders based on the infrastructure access level' do + project.project_feature.update!(operations_access_level: operations_access_level) + project.project_feature.update!(infrastructure_access_level: infrastructure_access_level) + + expect(subject.render?).to be render + end + end + + context 'when `split_operations_visibility_permissions` feature flag is disabled' do + before do + stub_feature_flags(split_operations_visibility_permissions: false) + end + + where(:operations_access_level, :infrastructure_access_level, :render) do + ref(:disabled) | ref(:enabled) | false + ref(:disabled) | ref(:disabled) | false + ref(:enabled) | ref(:enabled) | true + ref(:enabled) | ref(:disabled) | true + end + + with_them do + it 'renders based on the operations access level' do + project.project_feature.update!(operations_access_level: operations_access_level) + project.project_feature.update!(infrastructure_access_level: infrastructure_access_level) + + expect(subject.render?).to be render + end + end + end + end end describe '#link' do diff --git a/spec/lib/sidebars/projects/menus/monitor_menu_spec.rb b/spec/lib/sidebars/projects/menus/monitor_menu_spec.rb index bd0904b9db2..f6a8dd7367d 100644 --- a/spec/lib/sidebars/projects/menus/monitor_menu_spec.rb +++ b/spec/lib/sidebars/projects/menus/monitor_menu_spec.rb @@ -102,19 +102,5 @@ RSpec.describe Sidebars::Projects::Menus::MonitorMenu do it_behaves_like 'access rights checks' end - - describe 'Product Analytics' do - let(:item_id) { :product_analytics } - - specify { is_expected.not_to be_nil } - - describe 'when feature flag :product_analytics is disabled' do - specify do - stub_feature_flags(product_analytics: false) - - is_expected.to be_nil - end - end - end end end |