Module: PageObject::PagePopulator

Included in:
PageObject
Defined in:
lib/page-object/page_populator.rb

Instance Method Summary collapse

Instance Method Details

#populate_page_with(data) ⇒ Object

This method will populate all matched page TextFields, TextAreas, SelectLists, FileFields, Checkboxes, and Radio Buttons from the Hash passed as an argument. The way it find an element is by matching the Hash key to the name you provided when declaring the element on your page.

Checkboxe and Radio Button values must be true or false.

can be either a string or a symbol. The value must be a string for TextField, TextArea, SelectList, and FileField and must be true or false for a Checkbox or RadioButton.

Examples:

class ExamplePage
  include PageObject

  text_field(:username, :id => 'username_id')
  checkbox(:active, :id => 'active_id')
end

...

@browser = Watir::Browser.new :firefox
example_page = ExamplePage.new(@browser)
example_page.populate_page_with :username => 'a name', :active => true


32
33
34
35
36
37
38
39
# File 'lib/page-object/page_populator.rb', line 32

def populate_page_with(data)
  data.each do |key, value|
    populate_checkbox(key, value) if is_checkbox?(key) and is_enabled?(key)
    populate_radiobuttongroup(key, value) if is_radiobuttongroup?(key)
    populate_radiobutton(key, value) if is_radiobutton?(key) and is_enabled?(key)
    populate_text(key, value) if is_text?(key) and is_enabled?(key)
  end
end