class OpsManagerUiDrivers::Version14::AvailabilityZones

Attributes

browser[R]
product[R]

Public Class Methods

new(browser:, product:) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 4
def initialize(browser:, product:)
  @browser = browser
  @product = product
end

Public Instance Methods

add_aws_az(iaas_identifier) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 9
def add_aws_az(iaas_identifier)
  open_form('availability_zones')

  set_fields(fields: {'iaas_identifier' => iaas_identifier})
  save_form
end
add_az(name, cluster, resource_pool) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 16
def add_az(name, cluster, resource_pool)
  open_form('availability_zones')

  browser.click_on 'Add'
  set_fields(
    fields: {
      'name'          => name,
      'cluster'       => cluster,
      'resource_pool' => resource_pool,
    }
  )
  save_form
end

Private Instance Methods

last_field(field) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 54
def last_field(field)
  browser.all(:field, "availability_zones[availability_zones][][#{field}]").last
end
open_form(form) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 38
def open_form(form)
  browser.visit '/'
  browser.click_on "show-#{product}-configure-action"
  browser.click_on "show-#{form}-action"
end
save_form() click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 33
def save_form
  browser.click_on 'Save'
  browser.expect(browser.page).to browser.have_css('.flash-message.success')
end
set_field(field, value) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 50
def set_field(field, value)
  last_field(field).set(value)
end
set_fields(fields:) click to toggle source
# File lib/ops_manager_ui_drivers/version14/availability_zones.rb, line 44
def set_fields(fields:)
  fields.each do |field, value|
    set_field(field, value)
  end
end