384f607abd972fd604e9e7a903061bda270923d3
[functest.git] / testcases / Controllers / ODL / custom_tests / neutron / 030__ports.robot
1 *** Settings ***
2 Documentation     Checking Port created in OpenStack are pushed to OpenDaylight
3 Suite Setup       Create Session    OSSession    http://${NEUTRON}:9696    headers=${X-AUTH}
4 Suite Teardown    Delete All Sessions
5 Library           Collections
6 Library           RequestsLibrary
7 Variables         ../../../variables/Variables.py
8
9 *** Variables ***
10 ${ODLREST}        /controller/nb/v2/neutron/ports
11 ${OSREST}         /v2.0/ports
12 ${data}           {"port":{"network_id":"${NETID}","admin_state_up": true}}
13
14 *** Test Cases ***
15 Check OpenStack ports
16     [Documentation]    Checking OpenStack Neutron for known ports
17     [Tags]    Ports Neutron OpenStack
18     Log    ${X-AUTH}
19     ${resp}    get request    OSSession    ${OSREST}
20     Should be Equal As Strings    ${resp.status_code}    200
21     ${OSResult}    To Json    ${resp.content}
22     Set Suite Variable    ${OSResult}
23     Log    ${OSResult}
24
25 Check OpenDaylight ports
26     [Documentation]    Checking OpenDaylight Neutron API for known ports
27     [Tags]    Ports Neutron OpenDaylight
28     Create Session    ODLSession    http://${CONTROLLER}:${PORT}    headers=${HEADERS}    auth=${AUTH}
29     ${resp}    get request    ODLSession    ${ODLREST}
30     Should be Equal As Strings    ${resp.status_code}    200
31     ${ODLResult}    To Json    ${resp.content}
32     Set Suite Variable    ${ODLResult}
33     Log    ${ODLResult}
34
35 Create New Port
36     [Documentation]    Create new port in OpenStack
37     [Tags]    Create port OpenStack Neutron
38     Log    ${data}
39     ${resp}    post request    OSSession    ${OSREST}    data=${data}
40     Should be Equal As Strings    ${resp.status_code}    201
41     ${result}    To JSON    ${resp.content}
42     ${result}    Get From Dictionary    ${result}    port
43     ${PORTID}    Get From Dictionary    ${result}    id
44     Log    ${result}
45     Log    ${PORTID}
46     Set Global Variable    ${PORTID}
47     sleep    2
48
49 Check New Port
50     [Documentation]    Check new port created in OpenDaylight
51     [Tags]    Check subnet OpenDaylight
52     ${resp}    get request    ODLSession    ${ODLREST}/${PORTID}
53     Should be Equal As Strings    ${resp.status_code}    200