diff --git a/lib/sidebars/projects/menus/infrastructure_menu.rb b/lib/sidebars/projects/menus/infrastructure_menu.rb index c0c1b9b195c60f56ee4a851b863136d4e17754d3..ccc4787601abee9f85f33cc49303253efd4f1d72 100644 --- a/lib/sidebars/projects/menus/infrastructure_menu.rb +++ b/lib/sidebars/projects/menus/infrastructure_menu.rb @@ -100,7 +100,7 @@ def google_cloud_menu_item ::Sidebars::MenuItem.new( title: _('Google Cloud'), link: project_google_cloud_index_path(context.project), - active_routes: {}, + active_routes: { controller: :google_cloud }, item_id: :google_cloud ) end diff --git a/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb b/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb index 2415598da9cf2888e806ebd007bb88ea19cff11a..55281171634c765b66ea1195cb80bfbde7bfbfa7 100644 --- a/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb +++ b/spec/lib/sidebars/projects/menus/infrastructure_menu_spec.rb @@ -51,6 +51,16 @@ it 'menu link points to Terraform page' do expect(subject.link).to eq find_menu_item(:terraform).link end + + context 'when Terraform menu is not visible' do + before do + subject.renderable_items.delete(find_menu_item(:terraform)) + end + + it 'menu link points to Google Cloud page' do + expect(subject.link).to eq find_menu_item(:google_cloud).link + end + end end end @@ -89,5 +99,11 @@ def find_menu_item(menu_item) it_behaves_like 'access rights checks' end + + describe 'Google Cloud' do + let(:item_id) { :google_cloud } + + it_behaves_like 'access rights checks' + end end end