class OpsManagerUiDrivers::Version17::ProductStatusHelper
Attributes
browser[R]
product_name[R]
Public Class Methods
new(product_name:, browser:)
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 4 def initialize(product_name:, browser:) @product_name = product_name @browser = browser end
Public Instance Methods
az_name_for_job_in_az(job_name, vpc_id, az_guid)
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 42 def az_name_for_job_in_az(job_name, vpc_id, az_guid) job_status = job_status_in_az("#{job_name}-partition-#{az_guid}", az_guid) job_ip = job_status.ips.fetch(0) ec2 = ::AWS::EC2.new # creds initialized in TestSettings::Renderer::SettingsFetcher::AWSSettings.initialize found_instance = ec2.instances.find do |instance| instance.private_ip_address == job_ip && instance.vpc_id == vpc_id && instance.status == :running end found_instance.availability_zone if found_instance end
job_status(job_name)
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 9 def job_status(job_name) open_page wait_for_loading_indicator_to_disappear browser.within "##{product_name}-status" do job_row = browser.find(:css, "tr[data-ip-name ^= '#{job_name}']") Version17::JobStatusHelper.from_job_row(job_row) end end
job_status_in_az(job_name, az_guid)
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 21 def job_status_in_az(job_name, az_guid) open_page wait_for_loading_indicator_to_disappear browser.within "##{product_name}-#{az_guid}-status-table" do job_row = browser.find(:css, "tr[data-ip-name ^= '#{job_name}']") Version17::JobStatusHelper.from_job_row(job_row) end end
resource_pool_for_job_in_az(job_name, az_guid, vsphere_connection)
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 33 def resource_pool_for_job_in_az(job_name, az_guid, vsphere_connection) job_status = job_status_in_az("#{job_name}-partition-#{az_guid}", az_guid) job_ip = job_status.ips.fetch(0) vm = vsphere_connection.searchIndex.FindByIp(ip: job_ip, vmSearch: true) vm.resourcePool.name end
Private Instance Methods
open_page()
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 60 def open_page browser.visit '/' browser.click_on "show-#{product_name}-configure-action" browser.click_on 'show-status-action' end
wait_for_loading_indicator_to_disappear()
click to toggle source
# File lib/ops_manager_ui_drivers/version17/product_status_helper.rb, line 67 def wait_for_loading_indicator_to_disappear Capybara.using_wait_time 20 do browser.all('.status-loading', count: 0) # blocks until there are no spinners end end