Remove variables for vpnservice
[integration/test.git] / csit / suites / sfc / Full_Deploy / 014__sfc_service_forwarders_logical.robot
1 *** Settings ***
2 Documentation       Test suite for SFC Service Function Forwarders, Operates SFFs from Restconf APIs. Logical SFF
3
4 Library             SSHLibrary
5 Library             Collections
6 Library             OperatingSystem
7 Library             RequestsLibrary
8 Resource            ../../../variables/sfc/Variables.robot
9 Resource            ../../../libraries/Utils.robot
10 Resource            ../../../libraries/TemplatedRequests.robot
11
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}
16
17
18 *** Variables ***
19 ${VERSION_DIR}                  master
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
24
25
26 *** Test Cases ***
27 Put Service Function Forwarders
28     [Documentation]    Add Service Function Forwarders from JSON file. Logical SFF
29     [Tags]    include
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}
39
40 Delete All Service Function Forwarders
41     [Documentation]    Delete all Service Function Forwarders. Logical SFF
42     [Tags]    include
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
49
50 Get one Service Function Forwarder
51     [Documentation]    Get one Service Function Forwarder. Logical SFF
52     [Tags]    include
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}
56
57 Delete A Service Function Forwarder
58     [Documentation]    Delete A Service Function Forwarder. Logical SFF
59     [Tags]    include
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
66
67 Put one Service Function Forwarder
68     [Documentation]    Put one Service Function Forwarder. Logical SFF
69     [Tags]    include
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}
76
77
78 *** Keywords ***
79 Init Suite
80     [Documentation]    Initialize session and ODL version specific variable. Logical SFFs
81     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
82     log    ${ODL_STREAM}