Module: HtmlSelectorsHelpers

Defined in:
lib/generators/cucumber/install/templates/support/selectors.rb

Instance Method Summary collapse

Instance Method Details

#selector_for(locator) ⇒ Object

Maps a name to a selector. Used primarily by the

When /^(.+) within (.+)$/ do |step, scope|

step definitions in web_steps.rb



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/generators/cucumber/install/templates/support/selectors.rb', line 8

def selector_for(locator)
  case locator

  when "the page"
    "html > body"

  # 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