Tidy new and updated test suites
[integration/test.git] / csit / suites / tsdr / HBase / 020_FlowMetrics.robot
1 *** Settings ***
2 Documentation     Test suite for Hbase DataStore Flow Stats Verification
3 Suite Setup       Start Tsdr Suite
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 @{FLOW_METRICS}    PacketCount    ByteCount
15
16 *** Test Cases ***
17 Init Variables
18     [Documentation]    Initialize ODL version specific variables
19     log    ${ODL_VERSION}
20     Run Keyword If    '${ODL_VERSION}' == 'stable-lithium'    Init Variables Lithium
21     ...    ELSE    Init Variables Master
22
23 Verification of TSDR FlowMetrics
24     [Documentation]    Verify the TSDR FlowStats
25     Wait Until Keyword Succeeds    120s    1s    Verify the Metric is Collected?    ${TSDR_FLOWSTATS}    PacketCount
26     ${output}=    Issue Command On Karaf Console    ${TSDR_FLOWSTATS}    ${ODL_SYSTEM_IP}    ${KARAF_SHELL_PORT}    30
27     : FOR    ${list}    IN    @{FLOW_METRICS}
28     \    Should Contain    ${output}    ${list}
29
30 Verification of FlowMetrics-PacketCount on HBase Client
31     [Documentation]    Verify the FlowStats-Packetcount on both Karaf console and Hbase client
32     ${tsdr_cmd}=    Concatenate the String    ${TSDR_FLOWSTATS}    | grep PacketCount | head
33     ${output}=    Issue Command On Karaf Console    ${tsdr_cmd}    ${ODL_SYSTEM_IP}    ${KARAF_SHELL_PORT}    90
34     ${Line1}=    Get Line    ${output}    0
35     Should Contain    ${Line1}    PacketCount
36     Verify the Metrics Attributes on Hbase Client    PacketCount    ${node_connector}    ${flowstats}
37
38 Verification of FlowMetrics-BytesCount on HBase Client
39     [Documentation]    Verify the FlowStats-ByteCount on both Karaf Console and Hbase Client
40     ${tsdr_cmd}=    Concatenate the String    ${TSDR_FLOWSTATS}    | grep ByteCount | head
41     ${output}=    Issue Command On Karaf Console    ${tsdr_cmd}    ${ODL_SYSTEM_IP}    ${KARAF_SHELL_PORT}    90
42     ${Line1}=    Get Line    ${output}    0
43     Should Contain    ${Line1}    ByteCount
44     Verify the Metrics Attributes on Hbase Client    ByteCount    ${node_connector}    ${flowstats}
45
46 *** Keywords ***
47 Init Variables Master
48     [Documentation]    Sets variables specific to latest(master) version
49     Set Suite Variable    ${TSDR_FLOWSTATS}    tsdr:list FLOWSTATS
50     set Suite Variable    ${node_connector}    Node:openflow:1,Table:0
51     set suite Variable    ${flowstats}    FLOWSTATS
52
53 Init Variables Lithium
54     [Documentation]    Sets variables specific to Lithium version
55     Set Suite Variable    ${TSDR_FLOWSTATS}    tsdr:list FlowStats
56     set Suite Variable    ${node_connector}    openflow:1_0
57     set suite Variable    ${flowstats}    FlowMetrics