mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-25 20:46:48 +00:00
109 lines
2.1 KiB
Ruby
109 lines
2.1 KiB
Ruby
module UIComponentHelper
|
|
|
|
def browse_as_medium
|
|
page.driver.resize(1024, 768)
|
|
end
|
|
|
|
def browse_as_large
|
|
page.driver.resize(1280, 800)
|
|
end
|
|
|
|
def click_login_button
|
|
click_button "Log in"
|
|
end
|
|
|
|
def click_signup_button
|
|
click_button "Sign up now"
|
|
end
|
|
|
|
def click_reset_password_button
|
|
click_button "Reset password"
|
|
end
|
|
|
|
def select_login_tab(text)
|
|
within ".login-modal" do
|
|
find("a", text: text).click
|
|
end
|
|
sleep 0.2
|
|
end
|
|
|
|
def open_login_modal
|
|
find("a", text: "Log in").click
|
|
end
|
|
|
|
def open_off_canvas
|
|
find("a.left-off-canvas-toggle").click
|
|
end
|
|
|
|
def have_login_modal
|
|
have_selector ".login-modal"
|
|
end
|
|
|
|
def open_product_modal(product)
|
|
find("a", text: product.name).click
|
|
end
|
|
|
|
def open_enterprise_modal(enterprise)
|
|
find("a", text: enterprise.name).trigger "click"
|
|
end
|
|
|
|
def modal_should_be_open_for(object)
|
|
within ".reveal-modal" do
|
|
page.should have_content object.name
|
|
end
|
|
end
|
|
|
|
def have_reset_password
|
|
have_content "An email with instructions on resetting your password has been sent!"
|
|
end
|
|
|
|
def have_in_cart name
|
|
show_cart
|
|
within "li.cart" do
|
|
have_content name
|
|
end
|
|
end
|
|
|
|
def show_cart
|
|
find("#cart").click
|
|
end
|
|
|
|
def cart_dirty
|
|
page.find("span.cart-span")[:class].include? 'dirty'
|
|
end
|
|
|
|
def wait_for_ajax
|
|
counter = 0
|
|
while page.execute_script("return $.active").to_i > 0
|
|
counter += 1
|
|
sleep(0.1)
|
|
raise "AJAX request took longer than 5 seconds." if counter >= 50
|
|
end
|
|
end
|
|
|
|
def be_logged_in_as(user_or_email)
|
|
if user_or_email.is_a? Spree::User
|
|
have_content user_or_email.email
|
|
else
|
|
have_content user_or_email
|
|
end
|
|
end
|
|
|
|
def be_logged_out
|
|
have_content "Log in"
|
|
end
|
|
|
|
def open_active_table_row
|
|
find("hub:first-child .active_table_row:first-child").click()
|
|
end
|
|
|
|
def expand_active_table_node(name)
|
|
find(".active_table_node", text: name).click
|
|
end
|
|
|
|
def follow_active_table_node(name)
|
|
expand_active_table_node(name)
|
|
find(".active_table_node a", text: "#{name}").click
|
|
end
|
|
end
|