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