Sha256: d07e25cbf375053017bd75d336f5ca7d3dfafd7945072d5f74a987127734527d

Contents?: true

Size: 1021 Bytes

Versions: 7

Compression:

Stored size: 1021 Bytes

Contents

module HtmlSelectorsHelpers
  # Maps a name to a selector. Used primarily by the
  #
  #   When /^(.+) within (.+)$/ do |step, scope|
  #
  # step definitions in web_steps.rb
  #
  def selector_for(locator)
    case locator

    when 'the page'
      'html > body'
    when 'table\'s header'
      'table tbody > tr th'
    when /^paragraphs?$/
      'p'

    # Add more mappings here.
    # Here is an example that pulls values out of the Regexp:
    #
    #  when /^the (notice|error|info) flash$/
    #    ".flash.#{$1}"

    # You can also return an array to use a different selector
    # type, like:
    #
    #  when /the header/
    #    [:xpath, "//header"]

    # This allows you to provide a quoted selector as the scope
    # for "within" steps as was previously the default for the
    # web steps:
    when /^"(.+)"$/
      $1

    else
      raise "Can't find mapping from \"#{locator}\" to a selector.\n" +
        "Now, go and add a mapping in #{__FILE__}"
    end
  end
end

World(HtmlSelectorsHelpers)

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ab_admin-0.3.6 features/support/selectors.rb
ab_admin-0.3.5 features/support/selectors.rb
ab_admin-0.3.4 features/support/selectors.rb
ab_admin-0.3.3 features/support/selectors.rb
ab_admin-0.3.2 features/support/selectors.rb
ab_admin-0.3.1 features/support/selectors.rb
ab_admin-0.3.0 features/support/selectors.rb