Tidy updated test suites
[integration/test.git] / csit / suites / tsdr / Cassandra / 040_QueueMetrics.robot
1 *** Settings ***
2 Documentation     Test suite for Cassandra DataStore Queue Stats Verification
3 Suite Setup       Initialize Cassandra Tables Metricval
4 Suite Teardown    Stop Tsdr Suite
5 Library           SSHLibrary
6 Library           Collections
7 Library           String
8 Library           ../../../libraries/Common.py
9 Resource          ../../../libraries/KarafKeywords.robot
10 Resource          ../../../libraries/TsdrUtils.robot
11 Variables         ../../../variables/Variables.py
12
13 *** Variables ***
14 @{QUEUE_METRICS}    TransmittedPackets    TransmittedBytes    TransmissionErrors
15 ${TSDR_QUEUESTATS}    tsdr:list QueueStats
16 ${QUERY_HEAD}     ${OPERATIONAL_NODES_API}/node
17 ${query_head1}    ${QUERY_HEAD}/openflow:2/node-connector/openflow:2:2/queue/
18 @{tsdr_q0}
19 @{tsdr_q2}
20 @{tsdr_q1}
21 ${transmittedpackets}    flow-capable-node-connector-queue-statistics/transmitted-packets
22 ${transmittedbytes}    flow-capable-node-connector-queue-statistics/transmitted-bytes
23 ${transmittederrors}    flow-capable-node-connector-queue-statistics/transmission-errors
24 @{openflow_q0}
25 @{openflow_q2}
26 @{openflow_q1}
27
28 *** Test Cases ***
29 Verification of TSDR Cassandra Feature Installation
30     [Documentation]    Install and Verify the TSDR Cassandra Features
31     COMMENT    Install a Feature    odl-tsdr-cassandra-all    ${CONTROLLER}    ${KARAF_SHELL_PORT}    60
32     Verify Feature Is Installed    odl-tsdr-cassandra
33     COMMENT    Verify Feature Is Installed    odl-tsdr-cassandra-persistence
34     Verify Feature Is Installed    odl-tsdr-openflow-statistics-collector
35     Start Tsdr Suite
36     Configuration of Queue on Switch
37     Ping All Hosts
38     Wait Until Keyword Succeeds    5x    30 sec    Check Metric path    24\\d+|25\\d+|26\\d+|27\\d+
39     Wait Until Keyword Succeeds    5x    30 sec    Check Metric val    \\d{5}
40
41 Getting all Tables from Openflow Plugin
42     [Documentation]    Getting Queue Stats from openflow plugin
43     ${ret}=    Get Stats XML    ${query_head1}0/    ${transmittederrors}
44     Append To List    ${openflow_q0}    ${ret}
45     ${ret}=    Get Stats XML    ${query_head1}0/    ${transmittedpackets}
46     Append To List    ${openflow_q0}    ${ret}
47     ${ret}=    Get Stats XML    ${query_head1}0/    ${transmittedbytes}
48     Append To List    ${openflow_q0}    ${ret}
49     Set Suite Variable    @{openflow_q0}
50     ${ret}=    Get Stats XML    ${query_head1}1/    ${transmittederrors}
51     Append To List    ${openflow_q1}    ${ret}
52     ${ret}=    Get Stats XML    ${query_head1}1/    ${transmittedpackets}
53     Append To List    ${openflow_q1}    ${ret}
54     ${ret}=    Get Stats XML    ${query_head1}1/    ${transmittedbytes}
55     Append To List    ${openflow_q1}    ${ret}
56     Set Suite Variable    @{openflow_q1}
57     ${ret}=    Get Stats XML    ${query_head1}2/    ${transmittederrors}
58     Append To List    ${openflow_q2}    ${ret}
59     ${ret}=    Get Stats XML    ${query_head1}2/    ${transmittedpackets}
60     Append To List    ${openflow_q2}    ${ret}
61     ${ret}=    Get Stats XML    ${query_head1}2/    ${transmittedbytes}
62     Append To List    ${openflow_q2}    ${ret}
63     Set Suite Variable    @{openflow_q2}
64
65 Verification of FlowStats-Attributes on Cassandra Data Store
66     [Documentation]    Verify the InterfaceMetrics has been updated on Cassandra Data Store
67     Copy TSDR tables
68     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmissionErrors | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:0
69     Append To List    ${tsdr_q0}    ${ret_val1}
70     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmittedPackets | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:0
71     Append To List    ${tsdr_q0}    ${ret_val1}
72     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmittedBytes | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:0
73     Append To List    ${tsdr_q0}    ${ret_val1}
74     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmissionErrors | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:1
75     Append To List    ${tsdr_q1}    ${ret_val1}
76     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmittedPackets | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:1
77     Append To List    ${tsdr_q1}    ${ret_val1}
78     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmittedBytes | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:1
79     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmissionErrors | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:2
80     Append To List    ${tsdr_q2}    ${ret_val1}
81     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmittedPackets | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:2
82     Append To List    ${tsdr_q2}    ${ret_val1}
83     ${ret_val1}=    Verify the Metrics Attributes on Cassandra Client    grep NID=openflow:2 | grep DC=QUEUESTATS | grep MN=TransmittedBytes | grep RK=Node:openflow:2,NodeConnector:openflow:2:2,Queue:2
84     Append To List    ${tsdr_q2}    ${ret_val1}
85
86 Comparing Queue Metrics
87     [Documentation]    Comparing Queue metrics between Cassandra and OF plugin
88     : FOR    ${xml_val}    ${tsdr_val}    IN ZIP    ${openflow_q0}    ${tsdr_q0}
89     \    Compare Tsdr XML Metrics    ${xml_val}    ${tsdr_val}    20
90     : FOR    ${xml_val}    ${tsdr_val}    IN ZIP    ${openflow_q1}    ${tsdr_q1}
91     \    Compare Tsdr XML Metrics    ${xml_val}    ${tsdr_val}    20
92     : FOR    ${xml_val}    ${tsdr_val}    IN ZIP    ${openflow_q2}    ${tsdr_q2}
93     \    Compare Tsdr XML Metrics    ${xml_val}    ${tsdr_val}    20
94
95 *** Keyword ***
96 Configuration of Queue on Switch
97     [Documentation]    Queue configuration on openvswitch
98     Configure the Queue on Switch    s2-eth2