Method: PageObject::Accessors#page_url

Defined in:
lib/page-object/accessors.rb

#page_url(url) ⇒ Object Also known as: direct_url

Specify the url for the page. A call to this method will generate a ‘goto’ method to take you to the page.

Parameters:

  • the (String)

    url for the page.

  • a (Symbol)

    method name to call to get the url



37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/page-object/accessors.rb', line 37

def page_url(url)
  define_method("goto") do
    platform.navigate_to self.page_url_value
  end

  define_method('page_url_value') do
    lookup = url.kind_of?(Symbol) ? self.send(url) : url
    erb = ERB.new(%Q{#{lookup}})
    merged_params = self.class.instance_variable_get("@merged_params")
    params = merged_params ? merged_params : self.class.params
    erb.result(binding)
  end
end