Integration tests for GBP
[integration/test.git] / csit / suites / groupbasedpolicy / GBP / 3-node / gbp2-multitenant / 001_set_odl.robot
1 *** Settings ***
2 Documentation     Test suite for GBP Tenants, Operates functions from Restconf APIs.
3 Default Tags      multi-tenant    setup    multi-tenant-setup
4 Suite Setup       Create Session    session    http://${CONTROLLER}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
5 Suite Teardown    Delete All Sessions
6 Library           RequestsLibrary
7 Library           OperatingSystem
8 Variables         ../../../../../variables/Variables.py
9 Resource          ../../../../../libraries/Utils.robot
10 Resource          ../Variables.robot
11
12 *** Variables ***
13
14 *** Test Cases ***
15 Put Tunnels
16     [Documentation]    Send tunnel augmentation to ODL
17     ${json_to_edit}    OperatingSystem.Get File    ${TUNNELS_FILE}
18     ${edited_json}     Replace String    ${json_to_edit}    _CLASSIFIER1    ${GBP1}
19     ${edited_json}     Replace String    ${edited_json}     _CLASSIFIER2    ${GBP2}
20     ${edited_json}     Replace String    ${edited_json}     _CLASSIFIER3    ${GBP3}
21     ${resp}    RequestsLibrary.Put Request    session    ${TUNNELS_PATH}    ${edited_json}    ${HEADERS}
22     Should Be Equal As Strings    ${resp.status_code}    200
23
24 Register Endpoints
25     [Documentation]    Endpoints registration
26     @{endpoint_files} =  OperatingSystem.List Files In Directory    ${ENDPOINTS_GBP2_DIR}    vethl*.*json    absolute
27     :FOR    ${endpoint_file}    IN    @{endpoint_files}
28     \    Post Elements To URI From File    ${ENDPOINT_REG_PATH}    ${endpoint_file}
29
30 Put Tenants
31     [Documentation]    Send GBP policy to ODL
32     Add Elements To URI From File    ${TENANT1_PATH}    ${TENANT1_FILE}
33     Add Elements To URI From File    ${TENANT2_PATH}    ${TENANT2_FILE}