diff options
Diffstat (limited to 'qa/qa/page/menu/side.rb')
-rw-r--r-- | qa/qa/page/menu/side.rb | 65 |
1 files changed, 60 insertions, 5 deletions
diff --git a/qa/qa/page/menu/side.rb b/qa/qa/page/menu/side.rb index 6c25aba4bac..7e028add2ef 100644 --- a/qa/qa/page/menu/side.rb +++ b/qa/qa/page/menu/side.rb @@ -2,17 +2,60 @@ module QA module Page module Menu class Side < Page::Base - def click_repository_setting - hover_setting do - click_link('Repository') + view 'app/views/layouts/nav/sidebar/_project.html.haml' do + element :settings_item + element :settings_link, 'link_to edit_project_path' + element :repository_link, "title: 'Repository'" + element :pipelines_settings_link, "title: 'CI / CD'" + element :issues_link, /link_to.*shortcuts-issues/ + element :issues_link_text, "Issues" + element :top_level_items, '.sidebar-top-level-items' + element :activity_link, "title: 'Activity'" + end + + view 'app/assets/javascripts/fly_out_nav.js' do + element :fly_out, "classList.add('fly-out-list')" + end + + def click_repository_settings + hover_settings do + within_submenu do + click_link('Repository') + end + end + end + + def click_ci_cd_settings + hover_settings do + within_submenu do + click_link('CI / CD') + end + end + end + + def click_ci_cd_pipelines + within_sidebar do + click_link('CI / CD') + end + end + + def go_to_settings + within_sidebar do + click_on 'Settings' + end + end + + def click_issues + within_sidebar do + click_link('Issues') end end private - def hover_setting + def hover_settings within_sidebar do - find('.nav-item-name', text: 'Settings').hover + find('.qa-settings-item').hover yield end @@ -23,6 +66,18 @@ module QA yield end end + + def go_to_activity + within_sidebar do + click_on 'Activity' + end + end + + def within_submenu + page.within('.fly-out-list') do + yield + end + end end end end |