Step 1: Move vm scripts to the right place
[integration/test.git] / test / tools / Robot_Tool / suites / base / container_manager.txt
index 8cd485df16d57ed674e3de3e3fe9f3fa6c2cfb45..d302d62d8b54573b3608db10a9e7c58ddf8faba8 100644 (file)
@@ -1,31 +1,46 @@
 *** Settings ***
-Documentation     Test suite for the container manager bundle.
+Documentation     Test suite for the container manager module.
+Suite Teardown    Delete All Sessions
 Library           Collections
 Library           RequestsLibrary
 Library           ../../libraries/Common.py
-Library           ../../libraries/ContainerManager.py
 Variables         ../../variables/Variables.py
 
 *** Variables ***
 ${name}           test_container1
 @{nodeconnectors}    OF|1@OF|00:00:00:00:00:00:00:01    OF|23@OF|00:00:00:00:00:00:20:21
-${key}            container-config
+${key}            containerConfig
+${REST_CONTEXT}    /controller/nb/v2/containermanager
 
 *** Test Cases ***
-Add and remove a container
-    [Documentation]    Add and remove a container. After each operation, list to validate the result.
-    [Tags]    add_remove_info
+Add a container
+    [Documentation]    Add a container, list to validate the result.
+    [Tags]    add
     ${flowspecs}    Convert To List    ${EMPTY}
-    Log Variables
     ${body}    Create Dictionary    container    ${name}    flowSpecs    ${flowspecs}    staticVlan
     ...    10    nodeConnectors    ${nodeconnectors}
-    Add Container    ${name}    ${body}
-    ${result}    Get Containers
-    Dictionary Should Contain Key    ${result}    ${key}
+    ${headers}    Create Dictionary    Content-Type    application/json
+    Create Session    session    http://${CONTROLLER}:8080    headers=${headers}    auth=${auth}
+    ${resp}    Put    session    ${REST_CONTEXT}/container/${name}    data=${body}
+    Should Be Equal As Strings    ${resp.status_code}    201    Response status code error
+    ${resp}    Get    session    ${REST_CONTEXT}/containers
+    Should Be Equal As Strings    ${resp.status_code}    200    Response status code error
+    ${result}    To JSON    ${resp.content}
     ${content}    Get From Dictionary    ${result}    ${key}
     List Should Contain Value    ${content}    ${body}
-    Remove Container    ${name}
-    ${result}    Get Containers
-    Dictionary Should Contain Key    ${result}    ${key}
+
+Remove a container
+    [Documentation]    Remove a container, list to validate the result.
+    [Tags]    remove
+    ${flowspecs}    Convert To List    ${EMPTY}
+    ${body}    Create Dictionary    container    ${name}    flowSpecs    ${flowspecs}    staticVlan
+    ...    10    nodeConnectors    ${nodeconnectors}
+    ${headers}    Create Dictionary    Content-Type    application/json
+    Create Session    session    http://${CONTROLLER}:8080    headers=${headers}    auth=${auth}
+    ${resp}    Delete    session    ${REST_CONTEXT}/container/${name}
+    Should Be Equal As Strings    ${resp.status_code}    204    Response status code error
+    ${resp}    Get    session    ${REST_CONTEXT}/containers
+    Should Be Equal As Strings    ${resp.status_code}    200    Response status code error
+    ${result}    To JSON    ${resp.content}
     ${content}    Get From Dictionary    ${result}    ${key}
     List Should Not Contain Value    ${content}    ${body}