class LoginPage
Constants
- DISABLE_2STEP_URL
Public Class Methods
browser()
click to toggle source
@return [Watir::Browser]
# File lib/leap_salesforce_ui/login_page.rb, line 8 def browser LeapSalesforce.browser end
error_message()
click to toggle source
# File lib/leap_salesforce_ui/login_page.rb, line 16 def error_message error_message_element.text end
error_message?()
click to toggle source
# File lib/leap_salesforce_ui/login_page.rb, line 20 def error_message? error_message_element.present? end
error_message_element()
click to toggle source
# File lib/leap_salesforce_ui/login_page.rb, line 12 def error_message_element browser.div(id: "error") end
login()
click to toggle source
# File lib/leap_salesforce_ui/login_page.rb, line 43 def login LeapSalesforce.logger.info "Logging in as user '#{LeapSalesforce.ui_user}'" browser.goto "#{LeapSalesforce.general_url}/?un=#{LeapSalesforce.ui_user}&pw=#{LeapSalesforce.password}" continue_button = browser.button(id: "thePage:inputForm:continue") if continue_button.exists? browser.checkbox(id: "thePage:inputForm:remember").set continue_button.click end end
login_manually()
click to toggle source
Could be used if a user wants to login through UI for login specific tests which should not be necessary
# File lib/leap_salesforce_ui/login_page.rb, line 26 def login_manually browser.goto LeapSalesforce.general_url browser.text_field(id: "username").set(LeapSalesforce.ui_user) browser.text_field(id: "password").set(LeapSalesforce.password) browser.button(id: "Login").click Watir::Wait.until(timeout: 60, message: "Did not login within the expected time") do raise "Cannot Login. #{error_message}" if error_message? if browser.url.include? "_ui/identity/verification/" raise LeapSalesforce::SetupError, "2 step verification page appears. Go to #{DISABLE_2STEP_URL} to learn how to disable it" end !browser.url.include? LeapSalesforce.general_url end end