ops_manager_ui_drivers 1.6.3 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/ops_manager_ui_drivers/page_helpers.rb +9 -1
- data/lib/ops_manager_ui_drivers/version.rb +1 -1
- data/lib/ops_manager_ui_drivers/version16/api_1_6.rb +42 -0
- data/lib/ops_manager_ui_drivers/version17/available_products.rb +25 -0
- data/lib/ops_manager_ui_drivers/version17/bosh_product_sections/advanced_infrastructure_config.rb +18 -0
- data/lib/ops_manager_ui_drivers/version17/bosh_product_sections/availability_zones.rb +29 -0
- data/lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb +39 -0
- data/lib/ops_manager_ui_drivers/version17/bosh_product_sections/iaas_configuration.rb +17 -0
- data/lib/ops_manager_ui_drivers/version17/bosh_product_sections/networks.rb +51 -0
- data/lib/ops_manager_ui_drivers/version17/job_availability_zone_mapping_helper.rb +70 -0
- data/lib/ops_manager_ui_drivers/version17/job_network_mapping_helper.rb +47 -0
- data/lib/ops_manager_ui_drivers/version17/job_status_helper.rb +17 -0
- data/lib/ops_manager_ui_drivers/version17/ops_manager_director.rb +188 -0
- data/lib/ops_manager_ui_drivers/version17/product_availability_zones.rb +38 -0
- data/lib/ops_manager_ui_drivers/version17/product_configuration.rb +38 -0
- data/lib/ops_manager_ui_drivers/version17/product_dashboard.rb +191 -0
- data/lib/ops_manager_ui_drivers/version17/product_errands.rb +42 -0
- data/lib/ops_manager_ui_drivers/version17/product_form.rb +61 -0
- data/lib/ops_manager_ui_drivers/version17/product_logs.rb +38 -0
- data/lib/ops_manager_ui_drivers/version17/product_resource_configuration.rb +69 -0
- data/lib/ops_manager_ui_drivers/version17/product_status_helper.rb +64 -0
- data/lib/ops_manager_ui_drivers/version17/settings.rb +136 -0
- data/lib/ops_manager_ui_drivers/version17/setup.rb +44 -0
- data/lib/ops_manager_ui_drivers/version17/state_change_progress.rb +43 -0
- data/lib/ops_manager_ui_drivers/version17/web_ui.rb +110 -0
- metadata +25 -2
@@ -0,0 +1,110 @@
|
|
1
|
+
require 'net/https'
|
2
|
+
require 'date'
|
3
|
+
|
4
|
+
module OpsManagerUiDrivers
|
5
|
+
module Version17
|
6
|
+
class WebUi
|
7
|
+
def initialize(browser: nil)
|
8
|
+
@browser = browser
|
9
|
+
end
|
10
|
+
|
11
|
+
def setup_page
|
12
|
+
Version17::Setup.new(browser: browser)
|
13
|
+
end
|
14
|
+
|
15
|
+
def product_dashboard
|
16
|
+
Version17::ProductDashboard.new(browser: browser)
|
17
|
+
end
|
18
|
+
|
19
|
+
def state_change_progress
|
20
|
+
Version17::StateChangeProgress.new(browser: browser)
|
21
|
+
end
|
22
|
+
|
23
|
+
def available_products
|
24
|
+
Version17::AvailableProducts.new(browser: browser)
|
25
|
+
end
|
26
|
+
|
27
|
+
def ops_manager_director
|
28
|
+
Version17::OpsManagerDirector.new(browser: browser)
|
29
|
+
end
|
30
|
+
|
31
|
+
def product_logs_for(product_name)
|
32
|
+
Version17::ProductLogs.new(browser: browser, product_name: product_name)
|
33
|
+
end
|
34
|
+
|
35
|
+
def product_resources_configuration(product_name)
|
36
|
+
Version17::ProductResourceConfiguration.new(browser: browser, product_name: product_name)
|
37
|
+
end
|
38
|
+
|
39
|
+
def product(product_name)
|
40
|
+
Version17::ProductConfiguration.new(browser: browser, product_name: product_name)
|
41
|
+
end
|
42
|
+
|
43
|
+
def product_status_for(product_name)
|
44
|
+
Version17::ProductStatusHelper.new(browser: browser, product_name: product_name)
|
45
|
+
end
|
46
|
+
|
47
|
+
def job_network_mapping_for(product_name)
|
48
|
+
Version17::JobNetworkMappingHelper.new(browser: browser, product_name: product_name)
|
49
|
+
end
|
50
|
+
|
51
|
+
def product_availability_zones(product_name)
|
52
|
+
Version17::ProductAvailabilityZones.new(browser: browser, product: product_name)
|
53
|
+
end
|
54
|
+
|
55
|
+
def assign_availability_zones_for_product(product:, zones:)
|
56
|
+
if zones
|
57
|
+
Version17::JobAvailabilityZoneMappingHelper.new(
|
58
|
+
browser: browser,
|
59
|
+
product_name: product,
|
60
|
+
).assign_availability_zones!(
|
61
|
+
singleton_availability_zone: zones[0]['name'],
|
62
|
+
availability_zones: zones.map { |z| z['name'] },
|
63
|
+
)
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
def current_time
|
68
|
+
uri = URI(Capybara.app_host)
|
69
|
+
uri.path = '/'
|
70
|
+
Net::HTTP.start(uri.hostname, uri.port, use_ssl: (uri.scheme == 'https'), verify_mode: OpenSSL::SSL::VERIFY_NONE) do |http|
|
71
|
+
response = http.request(Net::HTTP::Get.new(uri))
|
72
|
+
DateTime.parse(response['Date'])
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
def flash_message
|
77
|
+
browser.find('.flash-message').text
|
78
|
+
end
|
79
|
+
|
80
|
+
def availability_zone_guid_for_name(az_name)
|
81
|
+
browser.visit '/'
|
82
|
+
browser.click_on 'show-p-bosh-configure-action'
|
83
|
+
browser.click_on 'show-director-availability-zone-assignment-action'
|
84
|
+
|
85
|
+
availability_zone_options = find_az_field
|
86
|
+
availability_zone_options.each do |element|
|
87
|
+
if element.text == az_name
|
88
|
+
return element[:value]
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
private
|
94
|
+
|
95
|
+
attr_reader :browser
|
96
|
+
|
97
|
+
def guid
|
98
|
+
# jenkins gives us the job name in an environment variable, otherwise use the hostname
|
99
|
+
job_name = ENV['JOB_NAME'] || `hostname`.chomp.split(/\./).first
|
100
|
+
job_name.gsub(/[^[:alnum:]]+/, '_')
|
101
|
+
end
|
102
|
+
|
103
|
+
def find_az_field
|
104
|
+
browser.find_field('Singleton Availability Zone').all('option')
|
105
|
+
rescue Capybara::ElementNotFound
|
106
|
+
browser.find_field('Singleton Availability Zone', disabled: true).all('option')
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ops_manager_ui_drivers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pivotal, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-09-
|
11
|
+
date: 2015-09-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: capybara
|
@@ -198,6 +198,7 @@ files:
|
|
198
198
|
- lib/ops_manager_ui_drivers/version15/setup.rb
|
199
199
|
- lib/ops_manager_ui_drivers/version15/state_change_progress.rb
|
200
200
|
- lib/ops_manager_ui_drivers/version15/web_ui.rb
|
201
|
+
- lib/ops_manager_ui_drivers/version16/api_1_6.rb
|
201
202
|
- lib/ops_manager_ui_drivers/version16/available_products.rb
|
202
203
|
- lib/ops_manager_ui_drivers/version16/bosh_product_sections/advanced_infrastructure_config.rb
|
203
204
|
- lib/ops_manager_ui_drivers/version16/bosh_product_sections/availability_zones.rb
|
@@ -220,6 +221,28 @@ files:
|
|
220
221
|
- lib/ops_manager_ui_drivers/version16/setup.rb
|
221
222
|
- lib/ops_manager_ui_drivers/version16/state_change_progress.rb
|
222
223
|
- lib/ops_manager_ui_drivers/version16/web_ui.rb
|
224
|
+
- lib/ops_manager_ui_drivers/version17/available_products.rb
|
225
|
+
- lib/ops_manager_ui_drivers/version17/bosh_product_sections/advanced_infrastructure_config.rb
|
226
|
+
- lib/ops_manager_ui_drivers/version17/bosh_product_sections/availability_zones.rb
|
227
|
+
- lib/ops_manager_ui_drivers/version17/bosh_product_sections/bosh_product_form_section.rb
|
228
|
+
- lib/ops_manager_ui_drivers/version17/bosh_product_sections/iaas_configuration.rb
|
229
|
+
- lib/ops_manager_ui_drivers/version17/bosh_product_sections/networks.rb
|
230
|
+
- lib/ops_manager_ui_drivers/version17/job_availability_zone_mapping_helper.rb
|
231
|
+
- lib/ops_manager_ui_drivers/version17/job_network_mapping_helper.rb
|
232
|
+
- lib/ops_manager_ui_drivers/version17/job_status_helper.rb
|
233
|
+
- lib/ops_manager_ui_drivers/version17/ops_manager_director.rb
|
234
|
+
- lib/ops_manager_ui_drivers/version17/product_availability_zones.rb
|
235
|
+
- lib/ops_manager_ui_drivers/version17/product_configuration.rb
|
236
|
+
- lib/ops_manager_ui_drivers/version17/product_dashboard.rb
|
237
|
+
- lib/ops_manager_ui_drivers/version17/product_errands.rb
|
238
|
+
- lib/ops_manager_ui_drivers/version17/product_form.rb
|
239
|
+
- lib/ops_manager_ui_drivers/version17/product_logs.rb
|
240
|
+
- lib/ops_manager_ui_drivers/version17/product_resource_configuration.rb
|
241
|
+
- lib/ops_manager_ui_drivers/version17/product_status_helper.rb
|
242
|
+
- lib/ops_manager_ui_drivers/version17/settings.rb
|
243
|
+
- lib/ops_manager_ui_drivers/version17/setup.rb
|
244
|
+
- lib/ops_manager_ui_drivers/version17/state_change_progress.rb
|
245
|
+
- lib/ops_manager_ui_drivers/version17/web_ui.rb
|
223
246
|
- lib/ops_manager_ui_drivers/wait_helper.rb
|
224
247
|
- ops_manager_ui_drivers.gemspec
|
225
248
|
homepage: https://github.com/pivotal-cf-experimental/ops_manager_ui_drivers
|