*** Settings ***
Documentation Test Suite for vpn instance
-Suite Setup Create Session session http://${CONTROLLER}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
+Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
Suite Teardown Delete All Sessions
Library OperatingSystem
Library String
Library RequestsLibrary
Variables ../../variables/Variables.py
Library Collections
+Resource CompareStream.robot
*** Variables ***
${REST_CON} /restconf/config/
[Documentation] Creates VPN Instance through restconf
[Tags] Post
${body} OperatingSystem.Get File ${VPN_CONFIG_DIR}/vpn_instance.json
- ${resp} RequestsLibrary.Post session ${REST_CON}l3vpn:vpn-instances/ data=${body}
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Post Request session ${REST_CON}l3vpn:vpn-instances/ data=${body}
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Post Request session ${REST_CON}l3vpn-instances-interfaces:vpn-instances/ data=${body}
Log ${resp.content}
Should Be Equal As Strings ${resp.status_code} 204
Verify VPN instance
[Documentation] Verifies the vpn instance is created
[Tags] Get
- ${resp} RequestsLibrary.Get session ${REST_CON}l3vpn:vpn-instances/vpn-instance/${vpn_inst_values[0]}/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Get Request session ${REST_CON}l3vpn:vpn-instances/vpn-instance/${vpn_inst_values[0]}/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Get Request session ${REST_CON}l3vpn-instances-interfaces:vpn-instances/vpn-instance/${vpn_inst_values[0]}/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 200
Log ${resp.content}
- : FOR ${value} IN @{vpn_inst_values}
- \ Should Contain ${resp.content} ${value}
+ FOR ${value} IN @{vpn_inst_values}
+ Should Contain ${resp.content} ${value}
+ END
Create ietf vm interface
[Documentation] Creates ietf interface through the restconf
[Tags] Post
${body} OperatingSystem.Get File ${VPN_CONFIG_DIR}/vm_interface.json
- ${resp} RequestsLibrary.Post session ${REST_CON}ietf-interfaces:interfaces/ data=${body}
+ ${resp} RequestsLibrary.Post Request session ${REST_CON}ietf-interfaces:interfaces/ data=${body}
Should Be Equal As Strings ${resp.status_code} 204
Verify ietf vm interface
[Documentation] Verifies ietf interface created
[Tags] Get
- ${resp} RequestsLibrary.Get session ${REST_CON}ietf-interfaces:interfaces/interface/${vm_int_values[0]}/ headers=${ACCEPT_XML}
+ ${resp} RequestsLibrary.Get Request session ${REST_CON}ietf-interfaces:interfaces/interface/${vm_int_values[0]}/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 200
Log ${resp.content}
- : FOR ${value} IN @{vm_int_values}
- \ Should Contain ${resp.content} ${value}
+ FOR ${value} IN @{vm_int_values}
+ Should Contain ${resp.content} ${value}
+ END
Create VPN interface
[Documentation] Creates vpn interface for the corresponding ietf interface
[Tags] Post
${body} OperatingSystem.Get File ${VPN_CONFIG_DIR}/vm_vpninterface.json
- ${resp} RequestsLibrary.Post session ${REST_CON}l3vpn:vpn-interfaces/ data=${body}
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Post Request session ${REST_CON}l3vpn:vpn-interfaces/ data=${body}
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Post Request session ${REST_CON}l3vpn-instances-interfaces:vpn-interfaces/ data=${body}
Should Be Equal As Strings ${resp.status_code} 204
Verify VPN interface
[Documentation] Verifies the vpn interface created
[Tags] Get
- ${resp} RequestsLibrary.Get session ${REST_CON}l3vpn:vpn-interfaces/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Get Request session ${REST_CON}l3vpn:vpn-interfaces/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Get Request session ${REST_CON}l3vpn-instances-interfaces:vpn-interfaces/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 200
Log ${resp.content}
- : FOR ${value} IN @{vm_vpnint_values}
- \ Should Contain ${resp.content} ${value}
+ FOR ${value} IN @{vm_vpnint_values}
+ Should Contain ${resp.content} ${value}
+ END
Verify FIB entry after create
[Documentation] Verifies the fib entry for the corresponding vpn interface
Delete vm vpn interface
[Documentation] Deletes the vpn interface
[Tags] Delete
- ${resp} RequestsLibrary.Delete session ${REST_CON}l3vpn:vpn-interfaces/
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Delete Request session ${REST_CON}l3vpn:vpn-interfaces/
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Delete Request session ${REST_CON}l3vpn-instances-interfaces:vpn-interfaces/
Should Be Equal As Strings ${resp.status_code} 200
Verify after deleteing vm vpn interface
[Documentation] Verifies vpn interface after delete
[Tags] Verify after delete
- ${resp} RequestsLibrary.Get session ${REST_CON}l3vpn:vpn-interfaces/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Get Request session ${REST_CON}l3vpn:vpn-interfaces/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Get Request session ${REST_CON}l3vpn-instances-interfaces:vpn-interfaces/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 404
Delete VPN Instance
[Documentation] Deletes the VPN Instance
[Tags] Delete
- ${resp} RequestsLibrary.Delete session ${REST_CON}l3vpn:vpn-instances/vpn-instance/${vpn_inst_values[0]}/
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Delete Request session ${REST_CON}l3vpn:vpn-instances/vpn-instance/${vpn_inst_values[0]}/
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Delete Requestt session ${REST_CON}l3vpn-instances-interfaces:vpn-instances/vpn-instance/${vpn_inst_values[0]}/
Should Be Equal As Strings ${resp.status_code} 200
Verify after deleting the vpn instance
[Documentation] Verifies after deleting the vpn instance
[Tags] Verfiy after delete
- ${resp} RequestsLibrary.Get session ${REST_CON}l3vpn:vpn-instances/vpn-instance/${vpn_inst_values[0]}/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_Less_Than_Magnesium ${resp} RequestsLibrary.Post Request session ${REST_CON}l3vpn:vpn-instances/vpn-instance/${vpn_inst_values[0]}/ headers=${ACCEPT_XML}
+ CompareStream.Run_Keyword_If_At_Least_Magnesium ${resp} RequestsLibrary.Post Request session ${REST_CON}l3vpn-instances-interfaces:vpn-instances/vpn-instance/${vpn_inst_values[0]}/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 404
Delete vm ietf interface
[Documentation] Deletes the ietf interface
[Tags] Delete
- ${resp} RequestsLibrary.Delete session ${REST_CON}ietf-interfaces:interfaces/interface/${vm_int_values[0]}
+ ${resp} RequestsLibrary.Delete Request session ${REST_CON}ietf-interfaces:interfaces/interface/${vm_int_values[0]}
Should Be Equal As Strings ${resp.status_code} 200
Verify after deleting vm ietf interface
[Documentation] Verifies ietf interface after delete
[Tags] Verify after delete
- ${resp} RequestsLibrary.Get session ${REST_CON}ietf-interfaces:interfaces/interface/${vm_int_values[0]} headers=${ACCEPT_XML}
+ ${resp} RequestsLibrary.Get Request session ${REST_CON}ietf-interfaces:interfaces/interface/${vm_int_values[0]} headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 404
Verify FIB entry after delete
Ensure The Fib Entry Is Present
[Arguments] ${prefix}
[Documentation] Will succeed if the fib entry is present for the vpn
- ${resp} RequestsLibrary.Get session /restconf/operational/odl-fib:fibEntries/ headers=${ACCEPT_XML}
+ ${resp} RequestsLibrary.Get Request session /restconf/operational/odl-fib:fibEntries/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 200
Log ${resp.content}
Should Contain ${resp.content} ${prefix}
Ensure the Fib Entry Is Removed
[Arguments] ${prefix}
[Documentation] Will succeed if the fib entry is removed for the vpn
- ${resp} RequestsLibrary.Get session /restconf/operational/odl-fib:fibEntries/ headers=${ACCEPT_XML}
+ ${resp} RequestsLibrary.Get Request session /restconf/operational/odl-fib:fibEntries/ headers=${ACCEPT_XML}
Should Be Equal As Strings ${resp.status_code} 200
Should Not Contain ${resp.content} ${prefix}