Step 2: Move test folder to root
[integration/test.git] / csit / suites / tsdr / HBase / 040_QueueMetrics.robot
diff --git a/csit/suites/tsdr/HBase/040_QueueMetrics.robot b/csit/suites/tsdr/HBase/040_QueueMetrics.robot
new file mode 100644 (file)
index 0000000..5a14855
--- /dev/null
@@ -0,0 +1,52 @@
+*** Settings ***
+Documentation     Test suite for Hbase DataStore Queue Stats Verification
+Suite Setup       Run Keywords    Start Tsdr Suite    Configuration of Queue on Switch
+Suite Teardown    Stop Tsdr Suite
+Library           SSHLibrary
+Library           Collections
+Library           String
+Library           ../../../libraries/Common.py
+Resource          ../../../libraries/KarafKeywords.robot
+Resource          ../../../libraries/TsdrUtils.robot
+Variables         ../../../variables/Variables.py
+
+*** Variables ***
+@{QUEUE_METRICS}    TransmittedPackets    TransmittedBytes    TransmissionErrors
+${TSDR_QUEUESTATS}    tsdr:list QueueStats
+
+*** Test Cases ***
+Verify the Queue Metrics attributes exist thru Karaf console
+    [Documentation]    Verify the QueueMetrics attributes exist on Karaf Console
+    Wait Until Keyword Succeeds    180s    1s    Verify the Metric is Collected?    ${TSDR_QUEUESTATS}    Transmitted
+    ${output}=    Issue Command On Karaf Console    ${TSDR_QUEUESTATS}    ${CONTROLLER}    ${KARAF_SHELL_PORT}    30
+    : FOR    ${list}    IN    @{QUEUE_METRICS}
+    \    Should Contain    ${output}    ${list}
+
+Verification of QueueMetrics-TransmittedPackets on Karaf Console
+    [Documentation]    Verify the QueueMetrics has been updated thru tsdr:list command on karaf console
+    ${tsdr_cmd}=    Concatenate the String    ${TSDR_QUEUESTATS}    | grep TransmittedPackets | head
+    ${output}=    Issue Command On Karaf Console    ${tsdr_cmd}    ${CONTROLLER}    ${KARAF_SHELL_PORT}    90
+    Should Contain    ${output}    TransmittedPackets
+
+Verification of QueueMetrics-TransmittedPackets on HBase Client
+    [Documentation]    Verify the QueueMetrics has been updated on HBase Datastore
+    ${query}=    Generate HBase Query    QueueMetrics    TransmittedPackets_openflow:1
+    ${out}=    Query the Data from HBaseClient    ${query}
+    Should Match Regexp    ${out}    (?mui)TransmittedPackets
+
+Verification of QueueMetrics-TransmittedBytes on HBase Client
+    [Documentation]    Verify the QueueMetrics has been updated on HBase Datastore
+    ${query}=    Generate HBase Query    QueueMetrics    TransmittedBytes_openflow:1
+    ${out}=    Query the Data from HBaseClient    ${query}
+    Should Match Regexp    ${out}    (?mui)TransmittedBytes
+
+Verification of QueueMetrics-TransmissionErrors on HBase Client
+    [Documentation]    Verify the QueueMetrics has been updated on HBase Datastore
+    ${query}=    Generate HBase Query    QueueMetrics    TransmissionErrors_openflow:1
+    ${out}=    Query the Data from HBaseClient    ${query}
+    Should Match Regexp    ${out}    (?mui)TransmissionErrors
+
+*** Keyword ***
+Configuration of Queue on Switch
+    [Documentation]    Queue configuration on openvswitch
+    Configure the Queue on Switch    s2-eth2