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