blob: 546d8f74641262f9b31def56fb9f61be79a62bdd [file] [log] [blame]
Anves Kumar rayankulad6c35b12021-07-13 00:11:47 -05001*** Settings ***
2Documentation Test BMC multiple network interface functionalities via GUI.
3
4Resource ../../lib/gui_resource.robot
5Resource ../../../lib/resource.robot
Anves Kumar rayankula79337032021-07-13 00:22:36 -05006Resource ../../../lib/certificate_utils.robot
Anves Kumar rayankulad6c35b12021-07-13 00:11:47 -05007
8Suite Setup Suite Setup Execution
9Test Teardown FFDC On Test Case Fail
10
George Keishing0302e9a2023-10-12 21:48:35 +053011Force Tags Multiple_Interfaces
12
Anves Kumar rayankulad6c35b12021-07-13 00:11:47 -050013*** Variables ***
14
Rahul Maheshwari142642d2021-08-24 00:00:15 -050015${bmc_url} https://${OPENBMC_HOST}
16${bmc_url_1} https://${OPENBMC_HOST_1}
17${LDAP_FILE_PATH} ${EMPTY}
18${CA_FILE_PATH} ${EMPTY}
Anves Kumar rayankula79337032021-07-13 00:22:36 -050019
20${xpath_add_new_certificate} //*[contains(text(), ' Add new certificate ')]
21${xpath_certificate_type} //*[@id="certificate-type"]
22${xpath_upload_file} //*[@id="certificate-file"]
23${xpath_load_certificate} //button[text()=' Add ']
24${xpath_close_poup} //*[@class="close ml-auto mb-1"]
Anves Kumar rayankulad6c35b12021-07-13 00:11:47 -050025
26*** Test Cases ***
27
28Verify BMC GUI Is Accessible Via Both Network Interfaces
29 [Documentation] Verify BMC GUI is accessible via both network interfaces.
30 [Tags] Verify_BMC_GUI_Is_Accessible_Via_Both_Network_Interfaces
31 [Teardown] Close All Browsers
32
33 Start Virtual Display
34 ${browser_ID}= Open Browser ${bmc_url} alias=tab1
35 Set Window Size 1920 1080
36 ${browser_ID}= Open Browser ${bmc_url_1} alias=tab2
37 Set Window Size 1920 1080
38 Switch Browser tab1
39 Run Keywords Login GUI AND Logout GUI
40 Switch Browser tab2
41 Run Keywords Login GUI AND Logout GUI
42
Anves Kumar rayankula79337032021-07-13 00:22:36 -050043
44Load Certificates Via Eth1 IP Address And Verify
45 [Documentation] Verify ability to load LDAP certificate using eth1 IP address.
46 [Tags] Load_Certificates_Via_Eth1_IP_Address_And_Verify
47 [Template] Load Certificates On BMC Via GUI
48
49 # bmc_url certificate_type file_path
50 ${bmc_url_1} Client ${LDAP_FILE_PATH}
51 ${bmc_url_1} CA ${CA_FILE_PATH}
52
53
Anves Kumar rayankulad6c35b12021-07-13 00:11:47 -050054*** keywords ***
55
56Suite Setup Execution
57 [Documentation] Do suite setup task.
58
59 Valid Value OPENBMC_HOST_1
60
61 # Check both interfaces are configured and reachable.
62 Ping Host ${OPENBMC_HOST}
63 Ping Host ${OPENBMC_HOST_1}
Anves Kumar rayankula79337032021-07-13 00:22:36 -050064
65
66Load Certificates On BMC Via GUI
67 [Documentation] Load certificate on BMC via GUI.
68 [Arguments] ${bmc_url} ${certificate_type} ${file_path} ${delete_cert}=${True}
69 [Teardown] Run Keywords Logout GUI AND Close Browser
70
71 # Description of argument(s):
72 # bmc_url Openbmc GUI URL to be open.
73 # certificate_type Certificate type.
74 # (e.g. "LDAP Certificate" or "CA Certificate").
75 # file_path Certificate file path (e.g. "/home/folder/file.pem").
76
77 ${path} ${ext}= Split Extension ${file_path}
78 Run Keyword If '${certificate_type}' == 'CA' and '${delete_cert}' == '${True}'
79 ... Delete All CA Certificate Via Redfish
80 ... ELSE IF '${certificate_type}' == 'Client' and '${delete_cert}' == '${True}'
81 ... Delete Certificate Via BMC CLI ${certificate_type}
82
83 Set Test Variable ${obmc_gui_url} https://${OPENBMC_HOST_1}
84 Launch Browser And Login GUI
85 Navigate To SSL Certificate Page
86 Sleep 10s
87 Click Element ${xpath_add_new_certificate}
88
89 Wait Until Page Contains Element ${xpath_certificate_type} timeout=20s
90 Run Keyword If '${certificate_type}' == 'CA'
91 ... Select From List By Label ${xpath_certificate_type} CA Certificate
92 ... ELSE IF '${certificate_type}' == 'Client'
93 ... Select From List By Label ${xpath_certificate_type} LDAP Certificate
94
95 Choose File ${xpath_upload_file} ${file_path}
96 Click Element ${xpath_load_certificate}
97
98 Run Keyword If '${ext}' !='pem' Wait Until Page Contains Error adding certificate.
99
100 Run Keyword If '${certificate_type}' == 'CA'
101 ... Wait Until Page Contains Successfully added CA Certificate.
102 ... ELSE IF '${certificate_type}' == 'Client'
103 ... Wait Until Page Contains Successfully added LDAP Certificate.
104 Click Element ${xpath_close_poup}
105
106
107Navigate To SSL Certificate Page
108 [Documentation] Navigate to SSL Certificate page.
109
Rahul Maheshwari142642d2021-08-24 00:00:15 -0500110 Click Element ${xpath_secuity_and_accesss_menu}
111 Click Element ${xpath_certificates_sub_menu}
112 Wait Until Keyword Succeeds 30 sec 10 sec Location Should Contain certificates
rramyasr-in9e2c96f2023-01-24 07:59:34 -0600113 Wait Until Element Is Not Visible ${xpath_page_loading_progress_bar} timeout=30