class OpsManagerUiDrivers::Version17::BoshProductSections::BoshProductFormSection

Attributes

field_prefix[R]

Public Class Methods

new(browser, field_prefix) click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 7
def initialize(browser, field_prefix)
  @browser = browser
  @field_prefix = field_prefix
end

Public Instance Methods

open_form(form_name) click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 12
def open_form(form_name)
  @browser.visit '/'
  @browser.click_on 'show-p-bosh-configure-action'
  @browser.click_on "show-#{form_name}-action"
end
save_form() click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 18
def save_form
  @browser.click_on 'Save'
  @browser.expect(@browser.page).to @browser.have_css('.flash-message.success')
end
select_all_az_references_on_page() click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 33
def select_all_az_references_on_page
  @browser.all(:field, "#{@field_prefix}[availability_zone_references][]").each do |node|
    node.set(true)
  end
end
set_fields(fields) click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 23
def set_fields(fields)
  fields.each do |field, value|
    if value.is_a? Hash
      handle_customized_field_value(value)
    else
      set_field(field, value)
    end
  end
end

Private Instance Methods

handle_customized_field_value(value) click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 41
def handle_customized_field_value(value)
  @browser.send(value['browser_command'], value['browser_arg'])
end
last_field(field) click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 49
def last_field(field)
  name = "#{@field_prefix}[#{field}]"
  @browser.execute_script "$('a[data-masked-input-name=\"#{name}\"]:contains(\"Change\")').click()"
  @browser.all(:field, name, minimum: 1).last
end
set_field(field, value) click to toggle source
# File lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb, line 45
def set_field(field, value)
  last_field(field).set(value)
end