Sha256: c56c18cf241eb8099212a064b789d4b70e59189706eddb1b3e6e8c140e911872

Contents?: true

Size: 1.41 KB

Versions: 5

Compression:

Stored size: 1.41 KB

Contents

module RSpectacular
  Selectors = {}

  Selectors.merge!(
    /the Facebook application/ => lambda do
      frame_element = find 'html#facebook div#pagelet_app_runner iframe'
      frame_element[:id]
    end,

    /the flash(.*)/ => lambda do |*args|
      flash_type       = args[0][/the flash(.*)/, 1]
      flash_type_class = flash_type.strip
      flash_type_class = flash_type_class.empty? ? '' : ".#{flash_type_class}"

      ".flash#{flash_type_class} p"
    end,

    ###
    # Facebook
    #
    /the Facebook login form/             => 'html#facebook form#login_form',
    /the Facebook page timeline nav bar/  => 'html#facebook #fbTimelineNavTopRow',
    /the Facebook account menu/           => '#navAccountLink',

    ###
    # PayPal
    #
    /the "Pay with PayPal" button/        => 'input[alt="Check out with PayPal"]',

    ###
    # Forms
    #
    /the errors for (.*)/                 => lambda { "#{sf $1}+div.error" },

    ###
    # Windows
    #
    /the most recently opened window/     => lambda { page.driver.browser.window_handles.last },
    /the alert dialog/                    => lambda { page.driver.browser.switch_to.alert },

    ###
    # Date Picker Buttons
    #
    /the date picker button for today/    => '.ui-datepicker-today',

    ###
    # Model Links
    #
    /the (.*) button for/                 => lambda { "##{$1.gsub(/ /, '_')}_#{args[0].class.name.underscore}_#{args[0].id}_link" }
  )
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rspectacular-0.27.0 lib/rspectacular/selectors/defaults.rb
rspectacular-0.26.0 lib/rspectacular/selectors/defaults.rb
rspectacular-0.25.0 lib/rspectacular/selectors/defaults.rb
rspectacular-0.24.0 lib/rspectacular/selectors/defaults.rb
rspectacular-0.23.1 lib/rspectacular/selectors/defaults.rb