*** Settings *** Documentation Test suite for RESTCONF Topology Suite Setup Create Session session http://${CONTROLLER}:8080 auth=${AUTH} headers=${HEADERS} Suite Teardown Delete All Sessions Library Collections Library ../../../libraries/RequestsLibrary.py Library ../../../libraries/Common.py Variables ../../../variables/Variables.py *** Variables *** ${topology1} "flow:1" ${node1} "openflow:1" ${node2} "openflow:2" ${node3} "openflow:3" ${key} link ${REST_CONTEXT_1} /restconf/operational/network-topology:network-topology ${REST_CONTEXT_2} /restconf/operational/network-topology:network-topology/topology/flow:1 ${REST_CONTEXT_3} /restconf/config/network-topology:network-topology/topology/flow:1/link/userlink *** Test Cases *** Get RESTCONF Topology [Documentation] Get RESTCONF Topology and validate the result. [Tags] get ${resp} Get session ${REST_CONTEXT_1} Should Be Equal As Strings ${resp.status_code} 200 Log ${resp.content} Should Contain ${resp.content} ${topology1} List all the links [Documentation] List all the links in the topology. [Tags] get ${body1} Create Dictionary dest-node=openflow:1 dest-tp=openflow:1:2 ${body2} Create Dictionary source-node=openflow:3 source-tp=openflow:3:3 ${link2} Create Dictionary link-id=openflow:3:3 destination=${body1} source=${body2} ${body1} Create Dictionary dest-node=openflow:1 dest-tp=openflow:1:1 ${body2} Create Dictionary source-node=openflow:2 source-tp=openflow:2:3 ${link1} Create Dictionary link-id=openflow:2:3 destination=${body1} source=${body2} ${body1} Create Dictionary dest-node=openflow:3 dest-tp=openflow:3:3 ${body2} Create Dictionary source-node=openflow:1 source-tp=openflow:1:2 ${link4} Create Dictionary link-id=openflow:1:2 destination=${body1} source=${body2} ${body1} Create Dictionary dest-node=openflow:2 dest-tp=openflow:2:3 ${body2} Create Dictionary source-node=openflow:1 source-tp=openflow:1:1 ${link3} Create Dictionary link-id=openflow:1:1 destination=${body1} source=${body2} ${links} Create List ${link1} ${link2} ${link3} ${link4} ${resp} Get session ${REST_CONTEXT_2} Should Be Equal As Strings ${resp.status_code} 200 ${result} To JSON ${resp.content} ${content} Get From Dictionary ${result} topology ${topology} Get From List ${content} 0 ${link} Get From Dictionary ${topology} link Sort List ${link} Lists Should be Equal ${link} ${links} Add a link [Documentation] Add a link, list to validate the result. [Tags] add ${body1} Create Dictionary dest-node=openflow:3 dest-tp=openflow:3:1 ${body2} Create Dictionary source-node=openflow:2 source-tp=openflow:2:1 ${body3} Create Dictionary link-id=userlink destination=${body1} source=${body2} ${links} Create List ${body3} ${body} Create Dictionary link=${links} ${resp} Put session ${REST_CONTEXT_3} data=${body} Should Be Equal As Strings ${resp.status_code} 200 ${resp} Get session ${REST_CONTEXT_3} Should Be Equal As Strings ${resp.status_code} 200 ${result} To JSON ${resp.content} ${link} Get From Dictionary ${result} link Lists Should be Equal ${link} ${links} Remove a link [Documentation] Remove a link, list to validate the result. [Tags] remove ${resp} Delete session ${REST_CONTEXT_3} Should Be Equal As Strings ${resp.status_code} 200 ${resp} Get session ${REST_CONTEXT_3} Should Be Equal As Strings ${resp.status_code} 404