+++ /dev/null
-*** Settings ***
-Documentation Test suite for RESTCONF inventory
-Suite Setup Create Session session http://${CONTROLLER}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS_XML}
-Suite Teardown Delete All Sessions
-Library Collections
-Library RequestsLibrary
-Library ../../../libraries/Common.py
-Variables ../../../variables/Variables.py
-Resource ../../../libraries/Utils.robot
-
-*** Variables ***
-${REST_CONTEXT} /restconf/operational/opendaylight-inventory:nodes
-${VENDOR} Nicira, Inc.
-${HARDWARE} Open vSwitch
-@{node_list} openflow:1 openflow:2 openflow:3
-
-*** Test Cases ***
-Get list of nodes
- [Documentation] Get the inventory
- Set Suite Variable ${SW_IPADDRESS} "flow-node-inventory:ip-address":"${MININET}"
- Set Suite Variable ${SW_VENDOR} "flow-node-inventory:manufacturer":"${VENDOR}"
- Set Suite Variable ${SW_HARDWARE} "flow-node-inventory:manufacturer":"${HARDWARE}"
- Set Suite Variable @{SW_CAPABILITIES} "flow-node-inventory:flow-feature-capability-flow-stats" "flow-node-inventory:flow-feature-capability-table-stats" "flow-node-inventory:flow-feature-capability-port-stats" "flow-node-inventory:flow-feature-capability-queue-stats"
- Wait Until Keyword Succeeds 30s 2s Ensure All Nodes Are In Response ${REST_CONTEXT} ${node_list}
- ${resp} RequestsLibrary.Get session ${REST_CONTEXT}
- Log ${resp.content}
-
-Get node 1 inventory
- [Documentation] Get the inventory for a node
- @{list} Append To List ${SW_CAPABILITIES} ${SW_VENDOR} ${SW_IPADDRESS} ${SW_HARDWARE} openflow:1:1
- ... openflow:1:2
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:1 ${list}
-
-Get node 2 inventory
- [Documentation] Get the inventory for a node
- @{list} Append To List ${SW_CAPABILITIES} ${SW_VENDOR} ${SW_IPADDRESS} ${SW_HARDWARE} openflow:2:1
- ... openflow:2:2 openflow:2:3
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:2 ${list}
-
-Get node 3 inventory
- [Documentation] Get the inventory for a node
- @{list} Append To List ${SW_CAPABILITIES} ${SW_VENDOR} ${SW_IPADDRESS} ${SW_HARDWARE} openflow:3:1
- ... openflow:3:2 openflow:3:3
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:3 ${list}
-
-Link Down
- [Documentation] Take link s1-s2 down
- Write link s1 s2 down
- Read Until mininet>
- @{list} Create List "link-down":true
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:1/node-connector/openflow:1:1 ${list}
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:2/node-connector/openflow:2:3 ${list}
-
-Link Up
- [Documentation] Take link s1-s2 up
- Write link s1 s2 up
- Read Until mininet>
- @{list} Create List "link-down":false
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:1/node-connector/openflow:1:1 ${list}
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT}/node/openflow:2/node-connector/openflow:2:3 ${list}
-
-Remove Port
- [Documentation] Remove port s2-eth1
- Write sh ovs-vsctl del-port s2 s2-eth1
- Read Until mininet>
- @{list} Create List openflow:2:1
- Wait Until Keyword Succeeds 30s 2s Check For Elements Not At URI ${REST_CONTEXT} ${list}
-
-Add Port
- [Documentation] Add port s2-eth1, new id 4
- Write sh ovs-vsctl add-port s2 s2-eth1
- Read Until mininet>
- @{list} Create List openflow:2:4
- Wait Until Keyword Succeeds 30s 2s Check For Elements At URI ${REST_CONTEXT} ${list}