ffc2f2d09690b16be037d590dbde4b8c285b081c
[integration/test.git] / csit / suites / nemo / engine / NEMO_ENGINE.robot
1 *** Settings ***
2 Documentation     Test suite for nemo engine functionality
3 Suite Setup       Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS_XML}
4 Suite Teardown    Delete All Sessions
5 Library           RequestsLibrary
6 Library           OperatingSystem
7 Library           ../../../libraries/Common.py
8 Variables         ../../../variables/Variables.py
9 Resource          ../../../libraries/Utils.robot
10
11 *** Variables ***
12 ${REGISTER_TENANT_FILE}    ${CURDIR}/../../../variables/nemo/register-user.json
13 ${STRUCTURE_HOST_FILE}    ${CURDIR}/../../../variables/nemo/intent-node-host.json
14 ${STRUCTURE_INTENT_FILE}    ${CURDIR}/../../../variables/nemo/structure-intent.json
15 ${PREDEFINE_ROLE_FILE}    ${CURDIR}/../../../variables/nemo/predefine/role.json
16 ${PREDEFINE_NODE_FILE}    ${CURDIR}/../../../variables/nemo/predefine/node.json
17 ${PREDEFINE_CONNECTION_FILE}    ${CURDIR}/../../../variables/nemo/predefine/connection.json
18
19 *** Test Cases ***
20 Add Pre-define Role
21     [Documentation]    Add Pre-define Role
22     [Tags]    Put
23     ${body}    OperatingSystem.Get File    ${PREDEFINE_ROLE_FILE}
24     ${resp}    RequestsLibrary.Put    session    ${PREDEFINE_ROLE_URI}    data=${body}    headers=${HEADERS_YANG_JSON}
25     Should Be Equal As Strings    ${resp.status_code}    200
26
27 Add Pre-define Node
28     [Documentation]    Add Pre-define Node
29     [Tags]    Put
30     ${body}    OperatingSystem.Get File    ${PREDEFINE_NODE_FILE}
31     ${resp}    RequestsLibrary.Put    session    ${PREDEFINE_NODE_URI}    data=${body}    headers=${HEADERS_YANG_JSON}
32     Should Be Equal As Strings    ${resp.status_code}    200
33
34 Add Pre-define Connection
35     [Documentation]    Add Pre-define Connection
36     [Tags]    Put
37     ${body}    OperatingSystem.Get File    ${PREDEFINE_CONNECTION_FILE}
38     ${resp}    RequestsLibrary.Put    session    ${PREDEFINE_CONNECTION_URI}    data=${body}    headers=${HEADERS_YANG_JSON}
39     Should Be Equal As Strings    ${resp.status_code}    200
40
41 Register Tenant
42     [Documentation]    Register Tenant
43     [Tags]    Post
44     ${body}    OperatingSystem.Get File    ${REGISTER_TENANT_FILE}
45     ${resp}    RequestsLibrary.Post    session    ${REGISTER_TENANT_URI}    data=${body}    headers=${HEADERS_YANG_JSON}
46     Log    ${resp.content}
47     Should Be Equal As Strings    ${resp.status_code}    200
48
49 Add Host Intent
50     [Documentation]    Add Host Intent
51     [Tags]    Post
52     ${body}    OperatingSystem.Get File    ${STRUCTURE_HOST_FILE}
53     ${resp}    RequestsLibrary.Post Request    session    ${STRUCTURE_INTENT_URI}    data=${body}    headers=${HEADERS_YANG_JSON}
54     Log    ${resp.content}
55     Should Be Equal As Strings    ${resp.status_code}    200
56
57 Add Structure Intent
58     [Documentation]    Add Structure Intent
59     [Tags]    Post
60     ${body}    OperatingSystem.Get File    ${STRUCTURE_INTENT_FILE}
61     ${resp}    RequestsLibrary.Post Request    session    ${STRUCTURE_INTENT_URI}    data=${body}    headers=${HEADERS_YANG_JSON}
62     Should Be Equal As Strings    ${resp.status_code}    200