| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 1 | *** Settings *** | 
 | 2 |  | 
 | 3 | Documentation       Test setting network address of host OS. | 
 | 4 |  | 
 | 5 | Resource            ../lib/rest_client.robot | 
 | 6 | Resource            ../lib/ipmi_client.robot | 
 | 7 | Resource            ../lib/utils.robot | 
 | 8 | Resource            ../lib/openbmc_ffdc.robot | 
 | 9 | Library             ../lib/utilities.py | 
 | 10 |  | 
 | 11 | Test Setup          Open Connection And Log In | 
| Steven Sombar | fac31e9 | 2017-12-15 09:40:34 -0600 | [diff] [blame] | 12 | Test Teardown       Test Teardown Execution | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 13 |  | 
| Matt Fischer | 6fb70d9 | 2023-10-24 19:06:33 -0600 | [diff] [blame] | 14 | Test Tags          Host_Network | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 15 |  | 
 | 16 | *** Variables *** | 
 | 17 | ${SET_ADDR_PREFIX}  0x00 0x08 0x61 0x80 0x21 0x70 0x62 0x21 0x00 0x01 0x06 0x04 | 
 | 18 | ${STATIC}           0x00 0x01                       #equivalent address type 1 | 
 | 19 | ${DHCP}             0x00 0x00                       #equivalent address type 0 | 
 | 20 | ${CLEAR_ADDR}       0x00 0x08 0x61 0x80 0x00 0x00 0x00 0x00 | 
 | 21 |  | 
 | 22 |  | 
 | 23 | *** Test Cases *** | 
 | 24 |  | 
 | 25 | Set Static Host Network Address Via IPMI | 
 | 26 |     [Documentation]  Set static host network address via IPMI and verify | 
 | 27 |     ...  IP address set with REST. | 
 | 28 |     [Tags]  Set_Static_Host_Network_Address_Via_IPMI | 
 | 29 |  | 
 | 30 |     ${ip_address}=  utilities.random_ip | 
 | 31 |     ${gateway_ip}=  utilities.random_ip | 
 | 32 |     ${mac_address}=  utilities.random_mac | 
 | 33 |     ${prefix_length}=  Evaluate  random.randint(0, 32)  modules=random | 
 | 34 |  | 
 | 35 |     ${mac_address_hex}=  Mac Address To Hex String  ${mac_address} | 
 | 36 |     ${ip_address_hex}=  IP Address To Hex String  ${ip_address} | 
 | 37 |     ${gateway_hex}=  IP Address To Hex String  ${gateway_ip} | 
 | 38 |     ${prefix_hex}=  Convert To Hex  ${prefix_length}  prefix=0x  lowercase=yes | 
 | 39 |  | 
 | 40 |     ${ipmi_raw_cmd}=  Catenate  SEPARATOR= | 
 | 41 |     ...  ${SET_ADDR_PREFIX}${SPACE}${mac_address_hex}${SPACE}${STATIC}${SPACE} | 
 | 42 |     ...  ${ip_address_hex}${SPACE}${prefix_hex}${SPACE}${gateway_hex} | 
 | 43 |  | 
 | 44 |     Run IPMI command  ${ipmi_raw_cmd} | 
 | 45 |  | 
| manasarm | 104cc6b | 2018-02-07 12:35:05 +0530 | [diff] [blame] | 46 |     ${data}=  Read Properties  ${NETWORK_MANAGER}host0/intf/addr | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 47 |     Should Contain  ${data["Origin"]}  Static | 
 | 48 |     Should Be Equal  ${data["Address"]}  ${ip_address} | 
 | 49 |     Should Be Equal  ${data["Gateway"]}  ${gateway_ip} | 
 | 50 |  | 
 | 51 |     ${new_mac_address}= | 
| manasarm | 104cc6b | 2018-02-07 12:35:05 +0530 | [diff] [blame] | 52 |     ...  Read Attribute  ${NETWORK_MANAGER}host0/intf  MACAddress | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 53 |     Should Be Equal  ${new_mac_address}  ${mac_address} | 
 | 54 |  | 
 | 55 |  | 
 | 56 | Set DHCP Host Address Via IPMI | 
 | 57 |     [Documentation]  Set dhcp host network address via IPMI and verify | 
 | 58 |     ...  IP address set with REST. | 
 | 59 |     [Tags]  Set_DHCP_Host_Address_Via_IPMI | 
 | 60 |  | 
 | 61 |     ${mac_address}=  utilities.random_mac | 
 | 62 |     ${mac_address_hex}=  Mac Address To Hex String  ${mac_address} | 
 | 63 |  | 
 | 64 |     ${ipmi_raw_cmd}=  Catenate  SEPARATOR= | 
 | 65 |     ...  ${SET_ADDR_PREFIX}${SPACE}${mac_address_hex}${SPACE}${DHCP} | 
 | 66 |     Run IPMI command  ${ipmi_raw_cmd} | 
 | 67 |  | 
| manasarm | 104cc6b | 2018-02-07 12:35:05 +0530 | [diff] [blame] | 68 |     ${origin}=  Read Attribute  ${NETWORK_MANAGER}host0/intf/addr  Origin | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 69 |     ${new_mac_address}= | 
| manasarm | 104cc6b | 2018-02-07 12:35:05 +0530 | [diff] [blame] | 70 |     ...  Read Attribute  ${NETWORK_MANAGER}host0/intf  MACAddress | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 71 |     Should Contain  ${origin}  DHCP | 
 | 72 |     Should Be Equal  ${new_mac_address}  ${mac_address} | 
 | 73 |  | 
 | 74 |  | 
 | 75 | *** Keywords *** | 
 | 76 |  | 
| Steven Sombar | fac31e9 | 2017-12-15 09:40:34 -0600 | [diff] [blame] | 77 | Test Teardown Execution | 
| Rahul Maheshwari | 9e7b67a | 2017-08-02 00:29:07 -0500 | [diff] [blame] | 78 |     [Documentation]  Do the post test teardown. | 
 | 79 |  | 
 | 80 |     FFDC On Test Case Fail | 
 | 81 |     Run IPMI command  ${CLEAR_ADDR} | 
 | 82 |     Close All Connections |