Network tests which needs user input moved to extended folder
Resolves openbmc/openbmc-test-automation#16
Change-Id: I351bdc8ec876355736fee1732c841d12863c013b
Signed-off-by: Rahul Maheshwari <rahulmaheshwari@in.ibm.com>
diff --git a/extended/test_networkd_ext.robot b/extended/test_networkd_ext.robot
new file mode 100755
index 0000000..0b82030
--- /dev/null
+++ b/extended/test_networkd_ext.robot
@@ -0,0 +1,138 @@
+*** Settings ***
+Documentation This suite will test extended Network Configuration Rest Interfaces
+
+Resource ../lib/rest_client.robot
+Resource ../lib/connection_client.robot
+Resource ../lib/utils.robot
+Resource ../lib/openbmc_ffdc.robot
+Library ../lib/pythonutil.py
+
+Suite Setup Open Connection And Log In
+Suite Teardown Close All Connections
+Test Teardown Log FFDC
+
+*** Test Cases ***
+
+Set IP address on valid Interface
+ [Tags] network_test
+ [Documentation] This test case sets the ip on the interface and validates
+ ... that ip address has been set or not.
+ ... Expectation is the ip address should get added.
+
+ validateEnvVariables
+
+
+ ${networkInfo}= Get networkInfo from the interface eth0
+ ${result}= convert to integer ${networkInfo['data'][1]}
+
+ ${MASK}= calcDottedNetmask ${result}
+ set suite variable ${OLD_MASK} ${MASK}
+ Log ${OLD_MASK}
+ set suite variable ${OLD_IP} ${networkInfo['data'][2]}
+ set suite variable ${OLD_GATEWAY} ${networkInfo['data'][3]}
+
+ Log ${OLD_IP}
+ Log ${OLD_GATEWAY}
+
+
+ ${NEW_IP}= Get Environment Variable NEW_BMC_IP
+ ${NEW_MASK}= Get Environment Variable NEW_SUBNET_MASK
+ ${NEW_GATEWAY}= Get Environment Variable NEW_GATEWAY
+
+ ${arglist}= Create List eth0 ${NEW_IP} ${NEW_MASK} ${NEW_GATEWAY}
+ ${args}= Create Dictionary data=@{arglist}
+ run keyword and ignore error Call Method /org/openbmc/NetworkManager/Interface/ SetAddress4 data=${args}
+
+ Wait For Host To Ping ${NEW_IP}
+ Set Suite Variable ${AUTH_URI} https://${NEW_IP}
+ Log ${AUTH_URI}
+
+ ${networkInfo}= Get networkInfo from the interface eth0
+ ${ipaddress}= set variable ${networkInfo['data'][2]}
+ ${gateway}= set variable ${networkInfo['data'][3]}
+
+ ${isgatewayfound} = Set Variable If '${gateway}'=='${NEW_GATEWAY}' true false
+ Log ${isgatewayfound}
+ ${isIPfound}= Set Variable if '${ipaddress}' == '${NEW_IP}' true false
+ should be true '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
+
+
+Revert the last ip address change
+ [Tags] network_test
+ [Documentation] This test case sets the ip on the interface and validates
+ ... that ip address has been set or not.
+ ... Expectation is the ip address should get added.
+
+
+ ${arglist}= Create List eth0 ${OLD_IP} ${OLD_MASK} ${OLD_GATEWAY}
+ ${args}= Create Dictionary data=@{arglist}
+ run keyword and ignore error Call Method /org/openbmc/NetworkManager/Interface/ SetAddress4 data=${args}
+
+ Wait For Host To Ping ${OLD_IP}
+ Set Suite Variable ${AUTH_URI} https://${OLD_IP}
+ Log ${AUTH_URI}
+
+
+ ${networkInfo}= Get networkInfo from the interface eth0
+ ${ipaddress}= set variable ${networkInfo['data'][2]}
+ ${gateway}= set variable ${networkInfo['data'][3]}
+
+ ${isgatewayfound} = Set Variable If '${gateway}'=='${OLD_GATEWAY}' true false
+ Log ${isgatewayfound}
+ ${isIPfound}= Set Variable if '${ipaddress}' == '${OLD_IP}' true false
+ should be true '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
+
+
+Persistency check for ip address
+ [Tags] reboot_test
+ [Documentation] we reboot the service processor and after reboot
+ ... will request for the ip address to check the persistency
+ ... of the ip address.
+ ... Expectation is the ip address should persist.
+
+ Open Connection And Log In
+ Execute Command reboot
+ Log "System is getting rebooted wait for few seconds"
+ ${networkInfo}= Get networkInfo from the interface eth0
+ ${ipaddress}= set variable ${networkInfo['data'][2]}
+ ${gateway}= set variable ${networkInfo['data'][3]}
+
+ ${isgatewayfound} = Set Variable If '${gateway}'=='${OLD_GATEWAY}' true false
+ Log ${isgatewayfound}
+ ${isIPfound}= Set Variable if '${ipaddress}' == '${OLD_IP}' true false
+ should be true '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
+
+
+***keywords***
+
+Get networkInfo from the interface
+
+ [Documentation] This keyword is used to match the given ip with the configured one.
+ ... returns true if match successfull else false
+ ... eg:- Outout of getAddress4
+ ... NewFormat:-{"data": [ 2,25,"9.3.164.147","9.3.164.129"],"message": "200 OK","status": "ok"}
+ ... OldFormat:-
+ ... {"data": [[[2,25,0,128,"9.3.164.177"],[2,8,254,128,"127.0.0.1"]],"9.3.164.129"],
+ ... "message": "200 OK", "status": "ok"}
+
+ [arguments] ${intf}
+ @{arglist}= Create List ${intf}
+ ${args}= Create Dictionary data=@{arglist}
+ ${resp}= Call Method /org/openbmc/NetworkManager/Interface/ GetAddress4 data=${args}
+ should be equal as strings ${resp.status_code} ${HTTP_OK}
+ ${json} = to json ${resp.content}
+ Log ${json['data'][2]}
+ Log ${json['data'][3]}
+ [return] ${json}
+
+
+validateEnvVariables
+
+ ${NEW_BMC_IP}= Get Environment Variable NEW_BMC_IP
+ ${NEW_SUBNET_MASK}= Get Environment Variable NEW_SUBNET_MASK
+ ${NEW_GATEWAY}= Get Environment Variable NEW_GATEWAY
+
+
+ should not be empty ${NEW_BMC_IP}
+ should not be empty ${NEW_GATEWAY}
+ should not be empty ${NEW_SUBNET_MASK}
diff --git a/tests/test_networkd.robot b/tests/test_networkd.robot
index 974e89d..57c7140 100755
--- a/tests/test_networkd.robot
+++ b/tests/test_networkd.robot
@@ -99,76 +99,6 @@
... with empty gateway,Expectation is it should get error.
-Set IP address on valid Interface
- [Tags] network_test
- [Documentation] This test case sets the ip on the interface and validates
- ... that ip address has been set or not.
- ... Expectation is the ip address should get added.
-
- validateEnvVariables
-
-
- ${networkInfo}= Get networkInfo from the interface eth0
- ${result}= convert to integer ${networkInfo['data'][1]}
-
- ${MASK}= calcDottedNetmask ${result}
- set suite variable ${OLD_MASK} ${MASK}
- log to console ${OLD_MASK}
- set suite variable ${OLD_IP} ${networkInfo['data'][2]}
- set suite variable ${OLD_GATEWAY} ${networkInfo['data'][3]}
-
- log to console ${OLD_IP}
- log to console ${OLD_GATEWAY}
-
-
- ${NEW_IP}= Get Environment Variable NEW_BMC_IP
- ${NEW_MASK}= Get Environment Variable NEW_SUBNET_MASK
- ${NEW_GATEWAY}= Get Environment Variable NEW_GATEWAY
-
- ${arglist}= Create List eth0 ${NEW_IP} ${NEW_MASK} ${NEW_GATEWAY}
- ${args}= Create Dictionary data=@{arglist}
- run keyword and ignore error Call Method /org/openbmc/NetworkManager/Interface/ SetAddress4 data=${args}
-
- Wait For Host To Ping ${NEW_IP}
- Set Suite Variable ${AUTH_URI} https://${NEW_IP}
- log to console ${AUTH_URI}
-
- ${networkInfo}= Get networkInfo from the interface eth0
- ${ipaddress}= set variable ${networkInfo['data'][2]}
- ${gateway}= set variable ${networkInfo['data'][3]}
-
- ${isgatewayfound} = Set Variable If '${gateway}'=='${NEW_GATEWAY}' true false
- log to console ${isgatewayfound}
- ${isIPfound}= Set Variable if '${ipaddress}' == '${NEW_IP}' true false
- should be true '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
-
-
-Revert the last ip address change
- [Tags] network_test
- [Documentation] This test case sets the ip on the interface and validates
- ... that ip address has been set or not.
- ... Expectation is the ip address should get added.
-
-
- ${arglist}= Create List eth0 ${OLD_IP} ${OLD_MASK} ${OLD_GATEWAY}
- ${args}= Create Dictionary data=@{arglist}
- run keyword and ignore error Call Method /org/openbmc/NetworkManager/Interface/ SetAddress4 data=${args}
-
- Wait For Host To Ping ${OLD_IP}
- Set Suite Variable ${AUTH_URI} https://${OLD_IP}
- log to console ${AUTH_URI}
-
-
- ${networkInfo}= Get networkInfo from the interface eth0
- ${ipaddress}= set variable ${networkInfo['data'][2]}
- ${gateway}= set variable ${networkInfo['data'][3]}
-
- ${isgatewayfound} = Set Variable If '${gateway}'=='${OLD_GATEWAY}' true false
- log to console ${isgatewayfound}
- ${isIPfound}= Set Variable if '${ipaddress}' == '${OLD_IP}' true false
- should be true '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
-
-
Get IP Address type
[Tags] GOOD-PATH
[Documentation] This test case tries to set existing ipaddress address and
@@ -198,30 +128,6 @@
should be equal as strings ${json['status']} ok
-Persistency check for ip address
- [Tags] reboot_test
- [Documentation] we reboot the service processor and after reboot
- ... will request for the ip address to check the persistency
- ... of the ip address.
- ... Expectation is the ip address should persist.
-
- Open Connection And Log In
- Execute Command reboot
-# sleep 100sec
- log to console "System is getting rebooted wait for few seconds"
- ${networkInfo}= Get networkInfo from the interface eth0
- ${ipaddress}= set variable ${networkInfo['data'][2]}
- ${gateway}= set variable ${networkInfo['data'][3]}
-
- ${isgatewayfound} = Set Variable If '${gateway}'=='${OLD_GATEWAY}' true false
- log to console ${isgatewayfound}
- ${isIPfound}= Set Variable if '${ipaddress}' == '${OLD_IP}' true false
- should be true '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
-
-
-
-
-
Set invalid Mac address eth0 gg:hh:jj:kk:ll:mm error
[Tags] network_test
[Template] SetMacAddress_bad
@@ -307,15 +213,3 @@
${resp}= Call Method /org/openbmc/NetworkManager/Interface/ GetHwAddress data=${args}
${json} = to json ${resp.content}
should be equal as strings ${json['data']} ${address}
-
-
-validateEnvVariables
-
- ${NEW_BMC_IP}= Get Environment Variable NEW_BMC_IP
- ${NEW_SUBNET_MASK}= Get Environment Variable NEW_SUBNET_MASK
- ${NEW_GATEWAY}= Get Environment Variable NEW_GATEWAY
-
-
- should not be empty ${NEW_BMC_IP}
- should not be empty ${NEW_GATEWAY}
- should not be empty ${NEW_SUBNET_MASK}