diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-12-28 18:20:21 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-12-28 18:20:21 +0300 |
commit | 0e08747b3d348b6c0effae19fe7050af327c05e2 (patch) | |
tree | f152de3210d4b20efe5330e91f5f1c2e87eaffd7 /spec | |
parent | fdb0790ab5d98c4b0777d75f2630f33d050a2b5e (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec')
4 files changed, 51 insertions, 2 deletions
diff --git a/spec/features/projects/navbar_spec.rb b/spec/features/projects/navbar_spec.rb index 348a661855c..9babe3c3b71 100644 --- a/spec/features/projects/navbar_spec.rb +++ b/spec/features/projects/navbar_spec.rb @@ -16,6 +16,7 @@ RSpec.describe 'Project navbar', :with_license, :js, feature_category: :groups_a stub_config(registry: { enabled: false }) stub_feature_flags(ml_experiment_tracking: false) + stub_feature_flags(model_registry: false) insert_package_nav insert_infrastructure_registry_nav insert_infrastructure_google_cloud_nav @@ -93,4 +94,16 @@ RSpec.describe 'Project navbar', :with_license, :js, feature_category: :groups_a it_behaves_like 'verified navigation bar' end + + context 'when model registry is available' do + before do + stub_feature_flags(model_registry: true) + + insert_model_registry_nav(_('Package Registry')) + + visit project_path(project) + end + + it_behaves_like 'verified navigation bar' + end end diff --git a/spec/lib/sidebars/projects/menus/packages_registries_menu_spec.rb b/spec/lib/sidebars/projects/menus/packages_registries_menu_spec.rb index 0cf95391a26..85c109615c8 100644 --- a/spec/lib/sidebars/projects/menus/packages_registries_menu_spec.rb +++ b/spec/lib/sidebars/projects/menus/packages_registries_menu_spec.rb @@ -39,7 +39,7 @@ RSpec.describe Sidebars::Projects::Menus::PackagesRegistriesMenu, feature_catego before do stub_container_registry_config(enabled: registry_enabled) stub_config(packages: { enabled: packages_enabled }) - stub_feature_flags(ml_experiment_tracking: false) + stub_feature_flags(ml_experiment_tracking: false, model_registry: false) end context 'when Packages Registry is visible' do @@ -195,5 +195,32 @@ RSpec.describe Sidebars::Projects::Menus::PackagesRegistriesMenu, feature_catego end end end + + describe 'Model registry' do + let(:item_id) { :model_registry } + + before do + allow(Ability).to receive(:allowed?).and_call_original + allow(Ability).to receive(:allowed?) + .with(user, :read_model_registry, project) + .and_return(model_registry_enabled) + end + + context 'when user can read model registry' do + let(:model_registry_enabled) { true } + + it 'shows the menu item' do + is_expected.not_to be_nil + end + end + + context 'when user can not read model registry' do + let(:model_registry_enabled) { false } + + it 'does not show the menu item' do + is_expected.to be_nil + end + end + end end end diff --git a/spec/lib/sidebars/projects/super_sidebar_menus/deploy_menu_spec.rb b/spec/lib/sidebars/projects/super_sidebar_menus/deploy_menu_spec.rb index 98d62948ac3..f23aaad71f9 100644 --- a/spec/lib/sidebars/projects/super_sidebar_menus/deploy_menu_spec.rb +++ b/spec/lib/sidebars/projects/super_sidebar_menus/deploy_menu_spec.rb @@ -18,7 +18,8 @@ RSpec.describe Sidebars::Projects::SuperSidebarMenus::DeployMenu, feature_catego :releases, :feature_flags, :packages_registry, - :container_registry + :container_registry, + :model_registry ]) end end diff --git a/spec/support/helpers/navbar_structure_helper.rb b/spec/support/helpers/navbar_structure_helper.rb index 5519a6910a2..49a9508b1ff 100644 --- a/spec/support/helpers/navbar_structure_helper.rb +++ b/spec/support/helpers/navbar_structure_helper.rb @@ -124,6 +124,14 @@ module NavbarStructureHelper ) end + def insert_model_registry_nav(within) + insert_after_sub_nav_item( + within, + within: _('Deploy'), + new_sub_nav_item_name: _('Model registry') + ) + end + def project_analytics_sub_nav_item [ _('Value stream analytics'), |