2024-12-18 08:13:39 +10:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module PageObjects
|
|
|
|
module Components
|
|
|
|
class DPageHeader < PageObjects::Pages::Base
|
|
|
|
def has_tabs?(names)
|
2025-01-16 12:52:41 +08:00
|
|
|
expect(page.all("#{tabs_container_selector} a").map(&:text)).to eq(names)
|
|
|
|
end
|
|
|
|
|
|
|
|
def has_active_tab?(tab_name)
|
|
|
|
find("#{tab_selector(tab_name)} .active")
|
|
|
|
end
|
|
|
|
|
|
|
|
def tab(tab_name)
|
|
|
|
find(tab_selector(tab_name))
|
2024-12-18 08:13:39 +10:00
|
|
|
end
|
|
|
|
|
|
|
|
def visible?
|
|
|
|
has_css?(".d-page-header")
|
|
|
|
end
|
|
|
|
|
|
|
|
def hidden?
|
|
|
|
has_no_css?(".d-page-header")
|
|
|
|
end
|
2025-01-16 12:52:41 +08:00
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def tabs_container_selector
|
|
|
|
"ul.d-nav-submenu__tabs"
|
|
|
|
end
|
|
|
|
|
|
|
|
def tab_item_selector(tab_name)
|
|
|
|
"li[class$='-tabs__#{tab_name}']"
|
|
|
|
end
|
|
|
|
|
|
|
|
def tab_selector(tab_name)
|
|
|
|
"#{tabs_container_selector} > #{tab_item_selector(tab_name)}"
|
|
|
|
end
|
2024-12-18 08:13:39 +10:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|