X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Fsuites%2Fgroupbasedpolicy%2FGBP_Basic%2F030_gbp_tunnel.robot;fp=csit%2Fsuites%2Fgroupbasedpolicy%2FGBP_Basic%2F030_gbp_tunnel.robot;h=9368dafbaa4d3f62ca3a4ae7c2a92482a0ac57a5;hb=59e81c38620fa1b61e15771191e35771450b9499;hp=0000000000000000000000000000000000000000;hpb=072f6e3a8d1bdf8f4c663843589c22d93ba07791;p=integration%2Ftest.git diff --git a/csit/suites/groupbasedpolicy/GBP_Basic/030_gbp_tunnel.robot b/csit/suites/groupbasedpolicy/GBP_Basic/030_gbp_tunnel.robot new file mode 100644 index 0000000000..9368dafbaa --- /dev/null +++ b/csit/suites/groupbasedpolicy/GBP_Basic/030_gbp_tunnel.robot @@ -0,0 +1,67 @@ +*** Settings *** +Documentation Test suite for GBP Tunnels, Operates functions from Restconf APIs. +Suite Setup Create Session session http://${CONTROLLER}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS} +Suite Teardown Delete All Sessions +Library SSHLibrary +Library Collections +Library OperatingSystem +Library RequestsLibrary +Variables ../../../variables/Variables.py +Resource ../../../libraries/Utils.robot + +*** Variables *** +${GBP_TUNNELS_FILE} ../../../variables/gbp/tunnels.json +${GBP_TUNNEL_ID} openflow:1 +${GBP_TUNNEL1_URL} /restconf/config/opendaylight-inventory:nodes/opendaylight-inventory:node/${GBP_TUNNEL_ID} +${GBP_TUNNEL1_FILE} ../../../variables/gbp/tunnel1.json + +*** Test Cases *** +Add Tunnels + [Documentation] Add Tunnels from JSON file + Add Elements To URI From File ${GBP_TUNNELS_API} ${GBP_TUNNELS_FILE} + ${body} OperatingSystem.Get File ${GBP_TUNNELS_FILE} + ${jsonbody} To Json ${body} + ${resp} RequestsLibrary.Get session ${GBP_TUNNELS_API} + Should Be Equal As Strings ${resp.status_code} 200 + ${result} To JSON ${resp.content} + Lists Should be Equal ${jsonbody} ${result} + +Delete All Tunnels + [Documentation] Delete all Tunnels + Add Elements To URI From File ${GBP_TUNNELS_API} ${GBP_TUNNELS_FILE} + ${body} OperatingSystem.Get File ${GBP_TUNNELS_FILE} + ${jsonbody} To Json ${body} + ${resp} RequestsLibrary.Get session ${GBP_TUNNELS_API} + Should Be Equal As Strings ${resp.status_code} 200 + Remove All Elements At URI ${GBP_TUNNELS_API} + ${resp} RequestsLibrary.Get session ${GBP_TUNNELS_API} + Should Be Equal As Strings ${resp.status_code} 404 + +Add one Tunnel + [Documentation] Add one Tunnel from JSON file + Add Elements To URI From File ${GBP_TUNNEL1_URL} ${GBP_TUNNEL1_FILE} + ${body} OperatingSystem.Get File ${GBP_TUNNEL1_FILE} + ${jsonbody} To Json ${body} + ${resp} RequestsLibrary.Get session ${GBP_TUNNEL1_URL} + Should Be Equal As Strings ${resp.status_code} 200 + ${result} To JSON ${resp.content} + Lists Should be Equal ${result} ${jsonbody} + +Get A Non-existing Tunnel + [Documentation] Get A Non-existing Tunnel + Remove All Elements At URI ${GBP_TUNNELS_API} + ${resp} RequestsLibrary.Get session ${GBP_TUNNEL1_URL} + Should Be Equal As Strings ${resp.status_code} 404 + +Delete one Tunnel + [Documentation] Delete one Tunnel + Remove All Elements At URI ${GBP_TUNNELS_API} + Add Elements To URI From File ${GBP_TUNNEL1_URL} ${GBP_TUNNEL1_FILE} + Remove All Elements At URI ${GBP_TUNNEL1_URL} + ${resp} RequestsLibrary.Get session ${GBP_TUNNELS_API} + Should Be Equal As Strings ${resp.status_code} 200 + Should Not Contain ${resp.content} ${GBP_TUNNEL_ID} + +Clean Datastore After Tests + [Documentation] Clean All Tunnels In Datastore After Tests + Remove All Elements At URI ${GBP_TUNNELS_API}