2 Documentation Test suite for GBP Tunnels, Operates functions from Restconf APIs.
3 Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
4 Suite Teardown Delete All Sessions
7 Library OperatingSystem
8 Library RequestsLibrary
9 Variables ../../../variables/Variables.py
10 Resource ../../../libraries/Utils.robot
13 ${GBP_TUNNELS_FILE} ../../../variables/gbp/tunnels.json
14 ${GBP_TUNNEL_ID} openflow:1
15 ${GBP_TUNNEL1_URL} /restconf/config/opendaylight-inventory:nodes/opendaylight-inventory:node/${GBP_TUNNEL_ID}
16 ${GBP_TUNNEL1_FILE} ../../../variables/gbp/tunnel1.json
20 [Documentation] Add Tunnels from JSON file
21 Add Elements To URI From File ${GBP_TUNNELS_API} ${GBP_TUNNELS_FILE}
22 ${body} OperatingSystem.Get File ${GBP_TUNNELS_FILE}
23 ${jsonbody} To Json ${body}
24 ${resp} RequestsLibrary.Get Request session ${GBP_TUNNELS_API}
25 Should Be Equal As Strings ${resp.status_code} 200
26 ${result} To JSON ${resp.content}
27 Lists Should be Equal ${jsonbody} ${result}
30 [Documentation] Delete all Tunnels
31 Add Elements To URI From File ${GBP_TUNNELS_API} ${GBP_TUNNELS_FILE}
32 ${body} OperatingSystem.Get File ${GBP_TUNNELS_FILE}
33 ${jsonbody} To Json ${body}
34 ${resp} RequestsLibrary.Get Request session ${GBP_TUNNELS_API}
35 Should Be Equal As Strings ${resp.status_code} 200
36 Remove All Elements At URI ${GBP_TUNNELS_API}
37 ${resp} RequestsLibrary.Get Request session ${GBP_TUNNELS_API}
38 Should Be Equal As Strings ${resp.status_code} 404
41 [Documentation] Add one Tunnel from JSON file
42 Add Elements To URI From File ${GBP_TUNNEL1_URL} ${GBP_TUNNEL1_FILE}
43 ${body} OperatingSystem.Get File ${GBP_TUNNEL1_FILE}
44 ${jsonbody} To Json ${body}
45 ${resp} RequestsLibrary.Get Request session ${GBP_TUNNEL1_URL}
46 Should Be Equal As Strings ${resp.status_code} 200
47 ${result} To JSON ${resp.content}
48 Lists Should be Equal ${result} ${jsonbody}
50 Get A Non-existing Tunnel
51 [Documentation] Get A Non-existing Tunnel
52 Remove All Elements At URI ${GBP_TUNNELS_API}
53 ${resp} RequestsLibrary.Get Request session ${GBP_TUNNEL1_URL}
54 Should Be Equal As Strings ${resp.status_code} 404
57 [Documentation] Delete one Tunnel
58 Remove All Elements At URI ${GBP_TUNNELS_API}
59 Add Elements To URI From File ${GBP_TUNNEL1_URL} ${GBP_TUNNEL1_FILE}
60 Remove All Elements At URI ${GBP_TUNNEL1_URL}
61 ${resp} RequestsLibrary.Get Request session ${GBP_TUNNELS_API}
62 Should Be Equal As Strings ${resp.status_code} 200
63 Should Not Contain ${resp.content} ${GBP_TUNNEL_ID}
65 Clean Datastore After Tests
66 [Documentation] Clean All Tunnels In Datastore After Tests
67 Remove All Elements At URI ${GBP_TUNNELS_API}