class AdminModule::Pages::LoginPage400

Public Instance Methods

enable_login_button() click to toggle source
# File lib/admin_module/pages/login_page_400.rb, line 53
  def enable_login_button
    # For 'unsupported' browsers (anything other than IE < v9), the login button
    # is disabled and hidden.
    #
    # Use JS to enable the button and make it visible.
    #
    enable_button_script = <<-EOS
      login_button = document.getElementById('btnLogin');
      login_button.disabled = false;
      login_button.style.visibility = 'visible';

      document.getElementById('lblBrowserCheck').textContent = "Automation courtesy of AdminModule"
    EOS

    @browser.execute_script(enable_button_script)
  end
get_dynamic_url() click to toggle source
# File lib/admin_module/pages/login_page_400.rb, line 18
def get_dynamic_url
  AdminModule.configuration.base_url
end
login_as(username, password) click to toggle source
# File lib/admin_module/pages/login_page_400.rb, line 27
def login_as(username, password)
  if !self.username? && current_url == AdminModule.configuration.base_url + '/AdminMain.aspx'
    # We're still logged in.
    return
  end

  raise ArgumentError.new("Missing username for login.\nHave you set the <CLIENT>_envname_USER environment variable?") if username.nil?

  raise ArgumentError.new("Missing password for login.\nHave you set the <CLIENT>_envname_PASSWORD environment variable?") if password.nil?

  unless current_url.downcase.include? get_dynamic_url.downcase
    navigate_to get_dynamic_url
  end

  self.username = username

  enable_login_button

  self.password = password
  login
end
logout() click to toggle source
# File lib/admin_module/pages/login_page_400.rb, line 49
def logout
  navigate_to get_dynamic_url + '/user/logout.aspx'
end