${karaf_password} karaf
*** Keywords ***
+Check Karaf Log File Does Not Have Messages
+ [Arguments] ${ip} ${message} ${log_file}=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
+ ${output}= Run Command On Remote System ${ip} grep ${message} ${log_file}
+ Should Not Contain ${output} ${message}
+
Verify Feature Is Installed
[Documentation] Will Succeed if the given ${feature_name} is found in the output of "feature:list -i"
[Arguments] ${feature_name} ${controller}=${CONTROLLER} ${karaf_port}=${karaf_shell_port}
*** Settings ***
Library SSHLibrary
Library ./UtilLibrary.py
+Resource KarafKeywords.txt
*** Variables ***
${start} sudo mn --controller=remote,ip=${CONTROLLER} --topo tree,1 --switch ovsk,protocols=OpenFlow13
Run Command On Remote System
[Arguments] ${remote_system} ${cmd} ${user}=${MININET_USER} ${prompt}=${LINUX_PROMPT} ${prompt_timeout}=30s
[Documentation] Reduces the common work of running a command on a remote system to a single higher level robot keyword,
- ... taking care to log in with a public key and. The command given is written and the output returned. No test conditions
+ ... taking care to log in with a public key and. The command given is written and the output returned. No test conditions
... are checked.
Log Attempting to execute ${cmd} on ${remote_system}
${conn_id}= Open Connection ${remote_system} prompt=${prompt} timeout=${prompt_timeout}
SSHLibrary.File Should Exist ${file}
Close Connection
+Verify Controller Is Not Dead
+ [Arguments] ${controller_ip}=${CONTROLLER}
+ [Documentation] Will execute any tests to verify the controller is not dead. Some checks are
+ ... Out Of Memory Execptions.
+ Check Karaf Log File Does Not Have Messages ${controller_ip} java.lang.OutOfMemoryError
\ No newline at end of file
Library OperatingSystem
Library String
Library XML
+Resource ../../../libraries/Utils.txt
Resource ../../../libraries/FlowLib.txt
Resource ../../../libraries/SwitchUtils.txt
Library ../../../libraries/RequestsLibrary.py
Set Suite Variable ${test_switch}
Call Method ${test_switch} set_mgmt_ip ${SWITCH_IP}
Call Method ${test_switch} set_controller_ip ${CONTROLLER}
+ Run Command On Remote System ${CONTROLLER} ps -elf | grep java
Log MAKE: ${test_switch.make}\n MODEL: ${test_switch.model}\n IP: ${test_switch.mgmt_ip}\n PROMPT: ${test_switch.mgmt_prompt}\n CONTROLLER_IP: ${test_switch.of_controller_ip}\n MGMT_PROTOCOL: ${test_switch.mgmt_protocol}
Ping ${test_switch.mgmt_ip}
Initialize Switch ${test_switch}