diff options
Diffstat (limited to 'qa/qa/page/component/badges.rb')
-rw-r--r-- | qa/qa/page/component/badges.rb | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/qa/qa/page/component/badges.rb b/qa/qa/page/component/badges.rb new file mode 100644 index 00000000000..f2c5f809d8d --- /dev/null +++ b/qa/qa/page/component/badges.rb @@ -0,0 +1,53 @@ +# frozen_string_literal: true + +module QA + module Page + module Component + class Badges < Page::Base + view 'app/assets/javascripts/badges/components/badge_form.vue' do + element :badge_name_field + element :badge_link_url_field + element :badge_image_url_field + element :add_badge_button + end + + view 'app/assets/javascripts/badges/components/badge_list.vue' do + element :badge_list_content + element :badge_list_row + end + + view 'app/assets/javascripts/badges/components/badge.vue' do + element :badge_image_link + end + + def fill_name(name) + fill_element :badge_name_field, name + end + + def fill_link_url(url) + fill_element :badge_link_url_field, url + end + + def fill_image_url(url) + fill_element :badge_image_url_field, url + end + + def click_add_badge_button + click_element :add_badge_button + end + + def has_badge?(badge_name) + within_element(:badge_list_content) do + has_element?(:badge_list_row, badge_name: badge_name) + end + end + + def has_visible_badge_image_link?(link_url) + within_element(:badge_list_content) do + has_element?(:badge_image_link, link_url: link_url) + end + end + end + end + end +end |