BuiltIn.Log ${msg}${newline}${bugs}
Check Nodes Stats
- [Arguments] ${node}
+ [Arguments] ${node} ${session}=session
[Documentation] A GET on the /node/${node} API is made and specific flow stat
... strings are checked for existence.
- ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_NODES_API}/node/${node}
+ ${resp} RequestsLibrary.Get Request ${session} ${OPERATIONAL_NODES_API}/node/${node}
Should Be Equal As Strings ${resp.status_code} 200
Should Contain ${resp.content} flow-capable-node-connector-statistics
Should Contain ${resp.content} flow-table-statistics
Check For Specific Number Of Elements At URI
- [Arguments] ${uri} ${element} ${expected_count}
+ [Arguments] ${uri} ${element} ${expected_count} ${session}=session
[Documentation] A GET is made to the specified ${URI} and the specific count of a
... given element is done (as supplied by ${element} and ${expected_count})
- ${resp} RequestsLibrary.Get Request session ${uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${uri}
Log ${resp.content}
Should Be Equal As Strings ${resp.status_code} 200
Should Contain X Times ${resp.content} ${element} ${expected_count}
Check For Elements At URI
- [Arguments] ${uri} ${elements}
+ [Arguments] ${uri} ${elements} ${session}=session
[Documentation] A GET is made at the supplied ${URI} and every item in the list of
... ${elements} is verified to exist in the response
- ${resp} RequestsLibrary.Get Request session ${uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${uri}
Log ${resp.content}
Should Be Equal As Strings ${resp.status_code} 200
: FOR ${i} IN @{elements}
\ Should Contain ${resp.content} ${i}
Check For Elements Not At URI
- [Arguments] ${uri} ${elements}
+ [Arguments] ${uri} ${elements} ${session}=session
[Documentation] A GET is made at the supplied ${URI} and every item in the list of
... ${elements} is verified to NOT exist in the response
- ${resp} RequestsLibrary.Get Request session ${uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${uri}
Log ${resp.content}
Should Be Equal As Strings ${resp.status_code} 200
: FOR ${i} IN @{elements}
BuiltIn.Log ${password}
${conn_id}= SSHLibrary.Open Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
Flexible SSH Login ${user} ${password}
- ${stdout} ${stderr} SSHLibrary.Execute Command ${cmd} return_stderr=True return_rc=True
+ ${stdout} ${stderr} SSHLibrary.Execute Command ${cmd} return_stderr=True
SSHLibrary.Close Connection
Log ${stderr}
[Teardown] SSHKeywords.Restore_Current_SSH_Connection_From_Index ${current_ssh_connection.index}
Write_Bare_Ctrl_C
[Documentation] Construct ctrl+c character and SSH-write it (without endline) to the current SSH connection.
... Do not read anything yet.
+ BuiltIn.Comment Use RemoteBash.Write_Bare_Ctrl_C instead.
${ctrl_c}= BuiltIn.Evaluate chr(int(3))
SSHLibrary.Write_Bare ${ctrl_c}
Write Bare Ctrl D
[Documentation] Construct ctrl+d character and SSH-write it (without endline) to the current SSH connection.
... Do not read anything yet.
+ BuiltIn.Comment Use RemoteBash.Write_Bare_Ctrl_D instead.
${ctrl_d}= BuiltIn.Evaluate chr(int(4))
SSHLibrary.Write Bare ${ctrl_d}
SSHLibrary.File Should Exist ${file}
Close Connection
+Copy File To Remote System
+ [Arguments] ${system} ${source} ${destination} ${user}=${TOOLS_SYSTEM_USER} ${password}=${TOOLS_SYSTEM_PASSWORD} ${prompt}=${DEFAULT_LINUX_PROMPT}
+ ... ${prompt_timeout}=5s
+ [Documentation] Simplifies copy file operations to remote system
+ ${conn_id}= Open Connection ${system} prompt=${prompt} timeout=${prompt_timeout}
+ Flexible SSH Login ${user} ${password}
+ SSHLibrary.Put File ${source} ${destination}
+ Close Connection
+
Check Karaf Log File Does Not Have Messages
[Arguments] ${ip} ${message} ${user}=${ODL_SYSTEM_USER} ${password}=${ODL_SYSTEM_PASSWORD} ${prompt}=${ODL_SYSTEM_PROMPT} ${log_file}=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
[Documentation] Fails if the provided ${message} is found in the karaf.log file. Uses grep to search. The
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
Remove All Elements At URI
- [Arguments] ${uri}
- ${resp} RequestsLibrary.Delete Request session ${uri}
+ [Arguments] ${uri} ${session}=session
+ ${resp} RequestsLibrary.Delete Request ${session} ${uri}
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
Remove All Elements At URI And Verify
- [Arguments] ${uri}
- ${resp} RequestsLibrary.Delete Request session ${uri}
+ [Arguments] ${uri} ${session}=session
+ ${resp} RequestsLibrary.Delete Request ${session} ${uri}
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
- ${resp} RequestsLibrary.Get Request session ${uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${uri}
Should Be Equal As Strings ${resp.status_code} 404
Remove All Elements If Exist
- [Arguments] ${uri}
+ [Arguments] ${uri} ${session}=session
[Documentation] Delete all elements from an URI if the configuration was not empty
- ${resp} RequestsLibrary.Get Request session ${uri}
- Run Keyword If '${resp.status_code}'!='404' Remove All Elements At URI ${uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${uri}
+ Run Keyword If '${resp.status_code}'!='404' Remove All Elements At URI ${uri} ${session}
Add Elements To URI From File
- [Arguments] ${dest_uri} ${data_file} ${headers}=${headers}
+ [Arguments] ${dest_uri} ${data_file} ${headers}=${headers} ${session}=session
${body} OperatingSystem.Get File ${data_file}
- ${resp} RequestsLibrary.Put Request session ${dest_uri} data=${body} headers=${headers}
+ ${resp} RequestsLibrary.Put Request ${session} ${dest_uri} data=${body} headers=${headers}
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
Add Elements To URI From File And Verify
- [Arguments] ${dest_uri} ${data_file} ${headers}=${headers}
+ [Arguments] ${dest_uri} ${data_file} ${headers}=${headers} ${session}=session
${body} OperatingSystem.Get File ${data_file}
- ${resp} RequestsLibrary.Put Request session ${dest_uri} data=${body} headers=${headers}
+ ${resp} RequestsLibrary.Put Request ${session} ${dest_uri} data=${body} headers=${headers}
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
- ${resp} RequestsLibrary.Get Request session ${dest_uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${dest_uri}
Should Not Be Equal ${resp.status_code} 404
Add Elements To URI And Verify
- [Arguments] ${dest_uri} ${data_file} ${headers}=${headers}
- ${resp} RequestsLibrary.Put Request session ${dest_uri} ${data_file} headers=${headers}
+ [Arguments] ${dest_uri} ${data_file} ${headers}=${headers} ${session}=session
+ ${resp} RequestsLibrary.Put Request ${session} ${dest_uri} ${data_file} headers=${headers}
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
- ${resp} RequestsLibrary.Get Request session ${dest_uri}
+ ${resp} RequestsLibrary.Get Request ${session} ${dest_uri}
Should Not Be Equal ${resp.status_code} 404
+Add Elements To URI From File And Check Validation Error
+ [Arguments] ${dest_uri} ${data_file} ${headers}=${headers} ${session}=session
+ ${body} OperatingSystem.Get File ${data_file}
+ ${resp} RequestsLibrary.Put Request ${session} ${dest_uri} data=${body} headers=${headers}
+ Should Contain ${DATA_VALIDATION_ERROR} ${resp.status_code}
+
Post Elements To URI From File
- [Arguments] ${dest_uri} ${data_file} ${headers}=${headers}
+ [Arguments] ${dest_uri} ${data_file} ${headers}=${headers} ${session}=session
${body} OperatingSystem.Get File ${data_file}
- ${resp} RequestsLibrary.Post Request session ${dest_uri} data=${body} headers=${headers}
+ ${resp} RequestsLibrary.Post Request ${session} ${dest_uri} data=${body} headers=${headers}
Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
Run Process With Logging And Status Check
\ Should Contain X Times ${string} ${item} &{dictionary_item_occurrence}[${item}]
Post Log Check
- [Arguments] ${uri} ${body} ${status_code}=200
+ [Arguments] ${uri} ${body} ${status_code}=200 ${session}=session
[Documentation] Post body to ${uri}, log response content, and check status
- ${resp}= RequestsLibrary.Post Request session ${uri} ${body}
+ ${resp}= RequestsLibrary.Post Request ${session} ${uri} ${body}
Log ${resp.content}
Should Be Equal As Strings ${resp.status_code} ${status_code}
[Return] ${resp}
[Arguments] ${cmd} ${prompt} ${timeout}=30s
[Documentation] quick wrapper for Write and Read Until Prompt Keywords to make test cases more readable
SSHLibrary.Set Client Configuration timeout=${timeout}
+ SSHLibrary.Read
SSHLibrary.Write ${cmd}
${output}= SSHLibrary.Read Until ${prompt}
[Return] ${output}