blob: 89e90f766ca9c68600ae011f853f16d775dbb504 [file] [log] [blame]
Rahul Maheshwarib940e192020-07-07 01:52:24 -05001*** Settings ***
2
3Documentation Test OpenBMC GUI "Overview" menu.
4
Rahul Maheshwari41747da2020-11-17 09:09:52 -06005Resource ../../lib/gui_resource.robot
manashsarma2544cb12020-08-23 14:25:08 -05006Resource ../../../lib/logging_utils.robot
manashsarmafb353662020-08-27 05:12:04 -05007Resource ../../../lib/list_utils.robot
manashsarma6d584de2020-08-30 02:33:07 -05008Resource ../../../lib/bmc_network_utils.robot
9
10Library String
Rahul Maheshwarib940e192020-07-07 01:52:24 -050011
12Suite Setup Launch Browser And Login GUI
13Suite Teardown Close Browser
14Test Setup Test Setup Execution
15
16
17*** Variables ***
18
manashsarma43568c22020-08-19 12:16:24 -050019${xpath_overview_page_header} //h1[contains(text(), "Overview")]
rramyasr-in22ed4ae2021-12-03 04:50:41 -060020${xpath_edit_network_settings_button} (//*[text()="View more"])[3]
21${view_all_event_logs} (//*[text()="View more"])[5]
manashsarmaa3a25362020-08-23 09:23:28 -050022${xpath_launch_serial_over_lan} //*[@data-test-id='overviewQuickLinks-button-solConsole']
rramyasr-in00b55452021-12-01 23:47:03 -060023${xpath_led_button} //*[@data-test-id='overviewInventory-checkbox-identifyLed']
rramyasr-in305d23a2022-01-19 01:32:04 -060024${view_all_Dumps} (//*[text()="View more"])[7]
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -050025
Rahul Maheshwarib940e192020-07-07 01:52:24 -050026*** Test Cases ***
27
28Verify Existence Of All Sections In Overview Page
29 [Documentation] Verify existence of all sections in Overview page.
30 [Tags] Verify_Existence_Of_All_Sections_In_Overview_Page
31
rramyasr-in532c37f2021-12-03 03:39:14 -060032 Page Should Contain BMC time
Ashwini Chandrappa516f70d2021-12-14 01:21:29 -060033 Page Should Contain Firmware information
Rahul Maheshwarib940e192020-07-07 01:52:24 -050034 Page Should Contain Server information
Ashwini Chandrappa516f70d2021-12-14 01:21:29 -060035 Wait Until Page Contains Network information timeout=10
rramyasr-in532c37f2021-12-03 03:39:14 -060036 Page Should Contain Power information
37 Page Should Contain Event logs
38 Page Should Contain Inventory and LEDs
rramyasr-ine6818d12022-01-13 07:23:40 -060039 Page Should Contain Dumps
Rahul Maheshwarib940e192020-07-07 01:52:24 -050040
manashsarma6d584de2020-08-30 02:33:07 -050041Verify Network Information In Overview Page
42 [Documentation] Verify values under network information section.
George Keishingf9248952021-05-28 07:52:37 -050043 [Tags] Verify_Network_Information_In_Overview_Page
manashsarma6d584de2020-08-30 02:33:07 -050044
45 ${hostname}= Get BMC Hostname
46 Page Should Contain ${hostname}
47
48 # Get all IP addresses and prefix lengths on system.
49
50 ${ip_addr_list}= Get BMC IP Info
51 FOR ${ip_address} IN @{ip_addr_list}
52 ${ip}= Fetch From Left ${ip_address} \/
53 Page Should Contain ${ip}
54 END
55
56 ${macaddr}= Get BMC MAC Address
57 Page Should Contain ${macaddr}
58
59
manashsarmae18f99e2020-08-28 10:12:57 -050060Verify Server Information Section
61 [Documentation] Verify values under server information section in overview page.
62 [Tags] Verify_Server_Information_Section
63
64 ${redfish_machine_model}= Redfish.Get Attribute /redfish/v1/Systems/system/ Model
65 Page Should Contain ${redfish_machine_model}
66
67 ${redfish_serial_number}= Redfish.Get Attribute /redfish/v1/Systems/system/ SerialNumber
68 Page Should Contain ${redfish_serial_number}
69
70 ${redfish_motherboard_manufacturer}= Redfish.Get Attribute
manashsarma58de7d72020-09-07 21:05:21 -050071 ... /redfish/v1/Systems/system/ Manufacturer
manashsarmae18f99e2020-08-28 10:12:57 -050072
73 Page Should Contain ${redfish_motherboard_manufacturer}
74
75
manashsarma554ddec2020-08-26 00:46:02 -050076Verify BMC Information Section
77 [Documentation] Verify BMC information section in overview page.
78 [Tags] Verify_BMC_Information_Section
79
80 ${firmware_version}= Redfish Get BMC Version
81 Page Should Contain ${firmware_version}
82
83
manashsarma43568c22020-08-19 12:16:24 -050084Verify Edit Network Setting Button
85 [Documentation] Verify navigation to network setting page after clicking the button in overview page.
86 [Tags] Verify_Edit_Network_Setting_Button
87
88 Click Element ${xpath_edit_network_settings_button}
89 Wait Until Page Contains Element ${xpath_network_page_header}
90
91
manashsarmafb353662020-08-27 05:12:04 -050092Verify Event Under High Priority Events Section
93 [Documentation] Verify event under high priority events section in case of any event.
94 [Tags] Verify_Event_Under_High_Priority_Events_Section
95
96 Redfish Purge Event Log
97 Click Element ${xpath_refresh_button}
98 Generate Test Error Log
Ashwini Chandrappa243a1f22021-07-26 01:10:04 -050099 Click Element ${xpath_refresh_button}
manashsarmafb353662020-08-27 05:12:04 -0500100 Wait Until Page Contains xyz.openbmc_project.Common.Error.InternalFailure timeout=30s
101
102
manashsarma7d0a4122020-08-23 13:41:03 -0500103Verify View All Event Logs Button
104 [Documentation] Verify view all event log button in overview page.
105 [Tags] Verify_View_All_Event_Logs_Button
106
107 Generate Test Error Log
108 Page Should Contain Element ${view_all_event_logs} timeout=30
109 Click Element ${view_all_event_logs}
110 Wait Until Page Contains Element ${xpath_event_header} timeout=30
111
112
manashsarmaa3a25362020-08-23 09:23:28 -0500113Verify Serial Over LAN Console Button In Overview Page
114 [Documentation] Click serial over LAN button and verify page navigation to serial over LAN page.
115 [Tags] Verify_Serial_Over_LAN_Console_Button_In_Overview_Page
116
117 Click Element ${xpath_launch_serial_over_lan}
Rahul Maheshwarib0374262020-11-02 01:38:31 -0600118 Wait Until Page Contains Element ${xpath_sol_console_heading}
manashsarmaa3a25362020-08-23 09:23:28 -0500119
120
manashsarmaffb30932020-08-24 07:31:54 -0500121Verify Server LED Turn On
122 [Documentation] Turn on server LED via GUI and verify its status via Redfish.
123 [Tags] Verify_Server_LED_Turn_On
124
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500125 # Turn Off the server LED via Redfish and refresh GUI.
George Keishing52eb7c22022-03-11 10:58:53 -0600126 Set IndicatorLED State Off
127
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500128 Refresh GUI
manashsarmaffb30932020-08-24 07:31:54 -0500129
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500130 # Turn ON the LED via GUI.
manashsarmaffb30932020-08-24 07:31:54 -0500131 Click Element At Coordinates ${xpath_led_button} 0 0
132
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500133 # Cross check that server LED ON state via Redfish.
George Keishing52eb7c22022-03-11 10:58:53 -0600134 Verify Identify LED State Via Redfish Lit
manashsarmaffb30932020-08-24 07:31:54 -0500135
136
137Verify Server LED Turn Off
138 [Documentation] Turn off server LED via GUI and verify its status via Redfish.
139 [Tags] Verify_Server_LED_Turn_Off
140
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500141 # Turn On the server LED via Redfish and refresh GUI.
George Keishing52eb7c22022-03-11 10:58:53 -0600142 Set IndicatorLED State Lit
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500143 Refresh GUI
manashsarmaffb30932020-08-24 07:31:54 -0500144
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500145 # Turn OFF the LED via GUI.
manashsarmaffb30932020-08-24 07:31:54 -0500146 Click Element At Coordinates ${xpath_led_button} 0 0
147
148 # Cross check that server LED off state via Redfish.
George Keishing52eb7c22022-03-11 10:58:53 -0600149 Verify Identify LED State Via Redfish Off
manashsarmaffb30932020-08-24 07:31:54 -0500150
151
manashsarma65c9e142020-08-23 07:27:52 -0500152Verify BMC Time In Overview Page
153 [Documentation] Verify that BMC date from GUI matches with BMC time via Redfish.
154 [Tags] Verify_BMC_Time_In_Overview_Page
155
156 ${date_time}= Redfish.Get Attribute ${REDFISH_BASE_URI}Managers/bmc DateTime
157 ${converted_date}= Convert Date ${date_time} result_format=%Y-%m-%d
158
159 Page Should Contain ${converted_date}
160
161
manashsarma43458ff2021-08-17 05:42:47 -0500162Verify BMC Information At Host Power Off State
163 [Documentation] Verify that BMC information is displayed at host power off state.
164 [Tags] Verify_BMC_Information_At_Host_Power_Off_State
165
166 Redfish Power Off stack_mode=skip
167 ${firmware_version}= Redfish Get BMC Version
168 Page Should Contain ${firmware_version}
169
170
rramyasr-in305d23a2022-01-19 01:32:04 -0600171Verify View More Button For Dumps
172 [Documentation] Verify view more button for dumps button in overview page.
173 [Tags] Verify_View_More_Button_For_Dumps
174
175 Wait Until Page Contains Element ${view_all_Dumps} timeout=30
176 Click Element ${view_all_Dumps}
177 Wait Until Page Contains Element ${xpath_dumps_header} timeout=30
178
Rahul Maheshwarib940e192020-07-07 01:52:24 -0500179*** Keywords ***
180
181Test Setup Execution
182 [Documentation] Do test case setup tasks.
183
184 Click Element ${xpath_overview_menu}
185 Wait Until Page Contains Element ${xpath_overview_page_header}
George Keishing52eb7c22022-03-11 10:58:53 -0600186
187
188Verify Identify LED State Via Redfish
189 [Documentation] Verify that Redfish identify LED system with given state.
190 [Arguments] ${expected_state}
191 # Description of argument(s):
192 # expected_state Expected value of Identify LED.
193
194 # Python module: get_member_list(resource_path)
195 ${systems}= Redfish_Utils.Get Member List /redfish/v1/Systems
196 FOR ${system} IN @{systems}
197 ${led_value}= Redfish.Get Attribute ${system} IndicatorLED
198 Should Be True '${led_value}' == '${expected_state}'
199 END
200
201
202Set IndicatorLED State
203 [Documentation] Performe redfish PATCH operation.
204 [Arguments] ${led_state} ${expect_resp_code}=[200, 204]
205 # Description of argument(s):
206 # led_state IndicatorLED state to "off", "Lit" etc.
207 # expect_resp_code Expected HTTPS response code. Default [200, 204]
208
209 # Python module: get_member_list(resource_path)
210 ${systems}= Redfish_Utils.Get Member List /redfish/v1/Systems
211 FOR ${system} IN @{systems}
212 Redfish.Patch ${system} body={"IndicatorLED":${led_state}} valid_status_codes=${expect_resp_code}
213 END