Class: OpsManagerUiDrivers::Version14::ProductDashboard
- Inherits:
-
Object
- Object
- OpsManagerUiDrivers::Version14::ProductDashboard
show all
- Includes:
- AnimationHelper
- Defined in:
- lib/ops_manager_ui_drivers/version14/product_dashboard.rb
Defined Under Namespace
Classes: ApplyUpdatesResult
Instance Method Summary
collapse
#disable_css_transitions!
Constructor Details
Returns a new instance of ProductDashboard.
9
10
11
12
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 9
def initialize(browser:)
@browser = browser
@allowed_ignorable_errors = []
end
|
Instance Method Details
#apply_updates(validate: true) ⇒ Object
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 14
def apply_updates(validate: true)
open_dashboard
browser.click_on 'install-action'
if validate
fail 'Install failed verification' if nonignorable_verification_failed?
allow_cpu_verification_errors
allow_privilege_verification_errors
allow_icmp_verification_errors
ignore_allowable_errors
assert_installation_started
end
ApplyUpdatesResult.new(browser: @browser)
end
|
#delete_installation_available? ⇒ Boolean
90
91
92
93
94
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 90
def delete_installation_available?
open_dashboard
browser.click_on 'toggle-installation-dropdown-action'
browser.all('#show-delete-installation-modal-action').any?
end
|
#delete_product(product_name) ⇒ Object
43
44
45
46
47
48
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 43
def delete_product(product_name)
open_dashboard
disable_css_transitions!
browser.click_on "open-delete-#{product_name.dasherize}-modal"
browser.click_on "delete-#{product_name.dasherize}-action"
end
|
#delete_whole_installation ⇒ Object
74
75
76
77
78
79
80
81
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 74
def delete_whole_installation
open_dashboard
browser.click_on 'toggle-installation-dropdown-action'
disable_css_transitions!
browser.click_on 'show-delete-installation-modal-action'
browser.click_on 'delete-installation-action'
apply_updates
end
|
#deletion_in_progress? ⇒ Boolean
96
97
98
99
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 96
def deletion_in_progress?
open_dashboard
browser.all('#delete-in-progress-marker').any?
end
|
#import_installation_file(file_path) ⇒ Object
29
30
31
32
33
34
35
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 29
def import_installation_file(file_path)
open_dashboard
browser.click_on 'toggle-installation-dropdown-action'
browser.click_on 'show-import-backup'
browser.attach_file 'import[file]', file_path
browser.click_on 'import-backup'
end
|
#import_product_from(full_path) ⇒ Object
50
51
52
53
54
55
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 50
def import_product_from(full_path)
open_dashboard
browser.attach_file('component_add[file]', full_path, {visible: false})
browser.expect(browser.page).to browser.have_text('Successfully added product')
end
|
#product_available?(product_name, product_version) ⇒ Boolean
57
58
59
60
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 57
def product_available?(product_name, product_version)
open_dashboard
browser.all("li.#{product_name} input#component_version[value='#{product_version}']", {visible: false}).any?
end
|
#product_configuration_percentage(product_name) ⇒ Object
123
124
125
126
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 123
def product_configuration_percentage(product_name)
open_dashboard
browser.find("#show-#{product_name}-configure-action")['data-progress'].to_i
end
|
#reset_state(ops_manager) ⇒ Object
101
102
103
104
105
106
107
108
109
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 101
def reset_state(ops_manager)
revert_pending_changes if revert_available?
if delete_installation_available?
delete_whole_installation
browser.poll_up_to_mins(15) do
browser.expect(ops_manager.state_change_progress).to browser.be_state_change_success
end
end
end
|
#revert_available? ⇒ Boolean
118
119
120
121
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 118
def revert_available?
open_dashboard
browser.all('#open-revert-installation-modal-action').any?
end
|
#revert_pending_changes ⇒ Object
111
112
113
114
115
116
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 111
def revert_pending_changes
open_dashboard
disable_css_transitions!
browser.click_on 'open-revert-installation-modal-action'
browser.click_on 'revert-installation-action'
end
|
#upgrade_microbosh ⇒ Object
37
38
39
40
41
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 37
def upgrade_microbosh
open_dashboard
browser.find('p', text: 'Ops Manager Director').trigger(:mouseover)
browser.click_on 'upgrade-microbosh'
end
|
#upgrade_product(product_name) ⇒ Object
62
63
64
65
66
67
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 62
def upgrade_product(product_name)
open_dashboard
browser.find(".product.#{product_name} p").trigger(:mouseover)
browser.click_on "upgrade-#{product_name}"
expect_no_flash_errors
end
|
#version_for_product(product_name) ⇒ Object
69
70
71
72
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 69
def version_for_product(product_name)
open_dashboard
browser.find("#show-#{product_name}-configure-action .version").text
end
|
#wait_for_installation_to_be_deleted ⇒ Object
83
84
85
86
87
88
|
# File 'lib/ops_manager_ui_drivers/version14/product_dashboard.rb', line 83
def wait_for_installation_to_be_deleted
browser.poll_up_to_mins(10) do
open_dashboard
assert_install_action_disabled
end
end
|