Initial ocpplugin system test. 59/38959/6
authorjason <jason.cw.yuan@foxconn.com>
Tue, 17 May 2016 08:33:42 +0000 (16:33 +0800)
committerJamo Luhrsen <jluhrsen@redhat.com>
Fri, 27 May 2016 05:07:47 +0000 (05:07 +0000)
Change-Id: Ie2fdb0c68da9a0c5e49b77221fb82c818af00098
Signed-off-by: jason <jason.cw.yuan@foxconn.com>
csit/libraries/OcpAgentKeywords.robot [new file with mode: 0644]
csit/suites/ocpplugin/basic/010__ocp_get.robot [new file with mode: 0644]
csit/testplans/ocpplugin-get.txt [new file with mode: 0644]

diff --git a/csit/libraries/OcpAgentKeywords.robot b/csit/libraries/OcpAgentKeywords.robot
new file mode 100644 (file)
index 0000000..270dd0d
--- /dev/null
@@ -0,0 +1,39 @@
+*** Settings ***
+Documentation     OCP agent library. This library is useful for tests using ocp agent tool to simulate RRH devices.
+Library           SSHLibrary
+Resource          Utils.robot
+Resource          OVSDB.robot
+Variables         ../variables/Variables.py
+
+*** Keywords ***
+Install Agent
+    [Arguments]    ${mininet}=${TOOLS_SYSTEM_IP}    ${controller}=${ODL_SYSTEM_IP}
+    [Documentation]    Start Agent with custom topology and connect to controller.
+    Log    Clear any existing Agent
+    ${conn_id}=    SSHLibrary.Open Connection    ${mininet}    prompt=${TOOLS_SYSTEM_PROMPT}    timeout=${DEFAULT_TIMEOUT}
+    Set Suite Variable    ${conn_id}
+    Utils.Flexible Mininet Login
+    SSHLibrary.Write    rm -rf /tmp/agent
+    SSHLibrary.Write    git clone https://git.opendaylight.org/gerrit/ocpplugin.git /tmp/agent
+    SSHLibrary.Read Until    Checking connectivity... done
+    SSHLibrary.Write    cd /tmp/agent/simple-agent
+    SSHLibrary.Write    mvn clean compile
+    SSHLibrary.Read Until    BUILD SUCCESS
+    Log    Agent installed
+    Close Connection
+
+Start Emulator Single
+    [Arguments]    ${mininet}=${TOOLS_SYSTEM_IP}    ${controller}=${ODL_SYSTEM_IP}    ${vendorID}=TST    ${serialNumber}=100
+    [Documentation]    Start Agent with custom topology and connect to controller.
+    ${mininet_conn_id}=    SSHLibrary.Open Connection    ${mininet}    prompt=${TOOLS_SYSTEM_PROMPT}    timeout=${DEFAULT_TIMEOUT}
+    Set Suite Variable    ${mininet_conn_id}
+    Utils.Flexible Mininet Login
+    SSHLibrary.Write    java -cp /tmp/agent/simple-agent/target/classes/ org.opendaylight.ocpplugin.OcpAgent ${controller} 1033 ${vendorID} ${serialNumber}
+    SSHLibrary.Read Until   getParamResp
+    [Return]    ${mininet_conn_id}
+
+Stop Emulator And Exit
+    [Arguments]    ${mininet_conn_id}
+    [Documentation]    Stops Agent and exits session ${mininet_conn_id}
+    SSHLibrary.Switch Connection    ${mininet_conn_id}
+    Close Connection
diff --git a/csit/suites/ocpplugin/basic/010__ocp_get.robot b/csit/suites/ocpplugin/basic/010__ocp_get.robot
new file mode 100644 (file)
index 0000000..05a082a
--- /dev/null
@@ -0,0 +1,31 @@
+*** Settings ***
+Documentation     Test suite for OCPPLUGIN
+Suite Setup       Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
+Suite Teardown    Delete All Sessions
+Library           SSHLibrary
+Library           Collections
+Library           RequestsLibrary
+Library           ../../../libraries/Common.py
+Library           ../../../libraries/Topology.py
+Resource          ../../../libraries/Utils.robot
+Resource          ../../../libraries/OcpAgentKeywords.robot
+Variables         ../../../variables/Variables.py
+
+*** Variables ***
+${NODE_ID}    /restconf/operational/opendaylight-inventory:nodes/node/ocp:
+${REST_GET_PARAM}    /restconf/operations/ocp-service:get-param-nb
+*** Test Cases ***
+Check if node exist
+    [Documentation]    get inventory node
+    [Tags]    get node
+    OcpAgentKeywords.Install Agent
+    ${mininet_conn_id}=    OcpAgentKeywords.Start Emulator Single
+    ${resp}    Get Request    session   ${NODE_ID}TST-100
+    Should Be Equal As Strings    ${resp.status_code}    200
+
+Get param from emulator
+    [Documentation]    OCPPLUGIN  get param
+    [Tags]    OCPPLUGIN get
+    ${resp}    Post Request    session    ${REST_GET_PARAM}    data={"input":{"nodeId":"ocp:TST-100","obj":[{"id":"ALL","param":[{"name":"ALL"}]}]}}
+    Should Be Equal As Strings    ${resp.status_code}    200
+    Stop Emulator And Exit    ${mininet_conn_id}
diff --git a/csit/testplans/ocpplugin-get.txt b/csit/testplans/ocpplugin-get.txt
new file mode 100644 (file)
index 0000000..41941bb
--- /dev/null
@@ -0,0 +1,2 @@
+# Place the suites in run order:
+integration/test/csit/suites/ocpplugin/basic