2 Documentation Test suite for SFC Service Function Forwarders, Operates SFFs from Restconf APIs. Logical SFF
4 Suite Teardown Delete All Sessions
5 Test Setup Remove All Elements If Exist ${SERVICE_FORWARDERS_URI}
6 Test Teardown Remove All Elements If Exist ${SERVICE_FORWARDERS_URI}
9 Library OperatingSystem
10 Library RequestsLibrary
11 Resource ../../../variables/sfc/Variables.robot
12 Resource ../../../libraries/Utils.robot
13 Resource ../../../libraries/TemplatedRequests.robot
17 ${TEST_DIR} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
18 ${SERVICE_FORWARDERS_FILE} ${TEST_DIR}/service-function-forwarders-logicallsff.json
19 ${SFF_SFFLOG_URI} ${SERVICE_FORWARDER_URI}/sfflogical1
20 ${SFF_SFFLOG_FILE} ${TEST_DIR}/service-function-forwarder-logicallsff1.json
23 Put Service Function Forwarders
24 [Documentation] Add Service Function Forwarders from JSON file. Logical SFF
26 Add Elements To URI From File ${SERVICE_FORWARDERS_URI} ${SERVICE_FORWARDERS_FILE}
27 ${body} OperatingSystem.Get File ${SERVICE_FORWARDERS_FILE}
28 ${jsonbody} To Json ${body}
29 ${forwarders} Get From Dictionary ${jsonbody} service-function-forwarders
30 ${resp} RequestsLibrary.Get Request session ${SERVICE_FORWARDERS_URI}
31 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
32 ${result} To JSON ${resp.content}
33 ${forwarder} Get From Dictionary ${result} service-function-forwarders
34 Lists Should be Equal ${forwarder} ${forwarders}
36 Delete All Service Function Forwarders
37 [Documentation] Delete all Service Function Forwarders. Logical SFF
39 Add Elements To URI From File ${SERVICE_FORWARDERS_URI} ${SERVICE_FORWARDERS_FILE}
40 ${resp} RequestsLibrary.Get Request session ${SERVICE_FORWARDERS_URI}
41 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
42 Remove All Elements At URI ${SERVICE_FORWARDERS_URI}
43 ${resp} RequestsLibrary.Get Request session ${SERVICE_FORWARDERS_URI}
44 Should Be Equal As Strings ${resp.status_code} 404
46 Get one Service Function Forwarder
47 [Documentation] Get one Service Function Forwarder. Logical SFF
49 Add Elements To URI From File ${SERVICE_FORWARDERS_URI} ${SERVICE_FORWARDERS_FILE}
50 ${elements}= Create List sfflogical1
51 Check For Elements At URI ${SFF_SFFLOG_URI} ${elements}
53 Delete A Service Function Forwarder
54 [Documentation] Delete A Service Function Forwarder. Logical SFF
56 Add Elements To URI From File ${SERVICE_FORWARDERS_URI} ${SERVICE_FORWARDERS_FILE}
57 ${resp} RequestsLibrary.Get Request session ${SFF_SFFLOG_URI}
58 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
59 Remove All Elements At URI ${SFF_SFFLOG_URI}
60 ${resp} RequestsLibrary.Get Request session ${SFF_SFFLOG_URI}
61 Should Be Equal As Strings ${resp.status_code} 404
63 Put one Service Function Forwarder
64 [Documentation] Put one Service Function Forwarder. Logical SFF
66 Add Elements To URI From File ${SFF_SFFLOG_URI} ${SFF_SFFLOG_FILE}
67 ${resp} RequestsLibrary.Get Request session ${SFF_SFFLOG_URI}
68 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
69 ${elements}= Create List sfflogical1
70 Check For Elements At URI ${SFF_SFFLOG_URI} ${elements}
71 Check For Elements At URI ${SERVICE_FORWARDERS_URI} ${elements}
75 [Documentation] Initialize session and ODL version specific variable. Logical SFFs
76 Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}