Fixes and enhancements to ATT workflow test
Change-Id: I11d08b4ec26336419ce966016cbeefc59a680226
diff --git a/src/test/cord-api/Framework/DHCP.robot b/src/test/cord-api/Framework/DHCP.robot
index fbf62b5..67525e6 100644
--- a/src/test/cord-api/Framework/DHCP.robot
+++ b/src/test/cord-api/Framework/DHCP.robot
@@ -16,6 +16,7 @@
Documentation Library to DHCP Requests from an RG (source host)
Library OperatingSystem
Library SSHLibrary
+Resource utils/utils.robot
*** Keywords ***
Send Dhclient Request
@@ -41,3 +42,9 @@
${result}= Read Until ${prompt}
SSHLibrary.Close Connection
[Return] ${result}
+
+IPv4 Address Assigned to DHCP Client
+ [Arguments] ${ip} ${user} ${pass} ${iface}
+ [Documentation] Check if the sepcified interface has an IPv4 address assigned
+ ${output}= Run Command On Remote System ${ip} ifconfig ${iface} ${user} ${pass}
+ Should Match Regexp ${output} \\b([0-9]{1,3}\\.){3}[0-9]{1,3}\\b
diff --git a/src/test/cord-api/Framework/Subscriber.robot b/src/test/cord-api/Framework/Subscriber.robot
index e4791f0..c925675 100644
--- a/src/test/cord-api/Framework/Subscriber.robot
+++ b/src/test/cord-api/Framework/Subscriber.robot
@@ -17,6 +17,7 @@
Library OperatingSystem
Library SSHLibrary
Library restApi.py
+Resource ../../Framework/utils/utils.robot
*** Keywords ***
Send EAPOL Message
@@ -24,14 +25,12 @@
[Documentation] SSH's into the RG (src) and executes a particular auth request via wpa_supplicant client. Requested packet should exist on src.
${conn_id}= SSHLibrary.Open Connection ${ip} prompt=${prompt} timeout=${prompt_timeout}
SSHLibrary.Login ${user} ${pass}
- SSHLibrary.Write sudo wpa_supplicant -B -i ${iface} -Dwired -c /etc/wpa_supplicant/${conf_file}
+ SSHLibrary.Write rm -f wpa.log
+ SSHLibrary.Write sudo wpa_supplicant -B -i ${iface} -Dwired -c /etc/wpa_supplicant/${conf_file} -f wpa.log
Read Until [sudo] password for ${user}:
SSHLibrary.Write ${pass}
- ${result}= Read Until wpa_supplicant
- Log To Console \n\n ${result}\n
+ Wait Until Keyword Succeeds 30s 2s Remote File Should Contain ${conn_id} wpa.log authentication completed successfully
SSHLibrary.Close Connection
- Should Contain ${result} Successfully initialized wpa_supplicant
- [Return] ${result}
Delete IP Addresses from Interface on Remote Host
[Arguments] ${ip} ${user} ${pass} ${interface} ${prompt}=$ ${prompt_timeout}=60s
@@ -137,4 +136,4 @@
Read Until [sudo] password for ${user}:
SSHLibrary.Write ${pass}
${result}= Read Until ${prompt}
- SSHLibrary.Close Connection
\ No newline at end of file
+ SSHLibrary.Close Connection
diff --git a/src/test/cord-api/Framework/utils/utils.robot b/src/test/cord-api/Framework/utils/utils.robot
index 0bfcd13..c9e3c79 100644
--- a/src/test/cord-api/Framework/utils/utils.robot
+++ b/src/test/cord-api/Framework/utils/utils.robot
@@ -26,7 +26,6 @@
Run Command On Remote System
[Arguments] ${ip} ${cmd} ${user} ${pass} ${prompt}=$ ${prompt_timeout}=60s
[Documentation] SSH's into a remote host, executes command, and logs+returns output
- BuiltIn.Log Attempting to execute command "${cmd}" on remote system "${system}"
${conn_id}= SSHLibrary.Open Connection ${ip} prompt=${prompt} timeout=${prompt_timeout}
SSHLibrary.Login ${user} ${pass}
${output}= SSHLibrary.Execute Command ${cmd}
@@ -204,3 +203,10 @@
[Arguments] ${ip} ${user} ${pass} ${process}
${rc}= Run Sudo Command On Remote System ${ip} sudo kill $(ps aux | grep '${process}' | awk '{print $2}'); echo $? ${user} ${pass}
Should Contain ${rc} 0
+
+Remote File Should Contain
+ [Arguments] ${conn_id} ${file_name} ${pattern}
+ SSHLibrary.Switch Connection ${conn_id}
+ SSHLibrary.Get File ${file_name} /tmp/
+ ${content}= OperatingSystem.Get File /tmp/${file_name}
+ Should Contain ${content} ${pattern}