--- /dev/null
+*** Settings ***
+Documentation Test suite for H2 DataStore FlowGroup Stats Verification
+Suite Setup Run Keywords Start TSDR suite with CPqD Switch Configuration of FlowGroup 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 ***
+@{FLOWGROUP_METRICS} ByteCount PacketCount RefCount
+${TSDR_FLOWGROUPSTATS} tsdr:list FlowGroupStats
+@{FLOWGROUP_HEADER} MetricName MetricValue MetricCategory MetricDetails
+
+*** Test Cases ***
+Verify the FlowGroup Stats attributes exist thru Karaf console
+ [Documentation] Verify the FlowGroupStats attributes exist on Karaf Console
+ Wait Until Keyword Succeeds 120s 1s Verify the Metric is Collected? ${TSDR_FLOWGROUPSTATS} ByteCount
+ ${output}= Issue Command On Karaf Console ${TSDR_FLOWGROUPSTATS} ${CONTROLLER} ${KARAF_SHELL_PORT} 30
+ : FOR ${list} IN @{FLOWGROUP_METRICS}
+ \ Should Contain ${output} ${list}
+
+Verification of FlowGroupStats-ByteCount on Karaf Console
+ [Documentation] Verify the FlowGroupStats has been updated thru tsdr:list command on karaf console
+ ${tsdr_cmd}= Concatenate the String ${TSDR_FLOWGROUPSTATS} | grep ByteCount | head
+ ${output}= Issue Command On Karaf Console ${tsdr_cmd} ${CONTROLLER} ${KARAF_SHELL_PORT} 90
+ Should Contain ${output} ByteCount
+ Should Contain ${output} FLOWGROUPSTATS
+ Should not Contain ${output} null
+ : FOR ${list} IN @{FLOWGROUP_HEADER}
+ \ Should Contain ${output} ${list}
+
+Verify FlowGroupStats-Attributes on H2 Datastore using JDBC Client
+ [Documentation] Verify the GroupStats,attributes on H2 Datastore using JDBC Client
+ : FOR ${list} IN @{FLOWGROUP_METRICS}
+ \ ${output}= Query Metrics on H2 Datastore FLOWGROUPSTATS ${list}
+ \ Should Contain ${output} ${list}
+
+*** Keyword ***
+Start TSDR suite with CPqD Switch
+ Start Tsdr Suite user
+
+Configuration of FlowGroup on Switch
+ [Documentation] FlowGroup configuration on CPqD
+ Run Command On Remote System ${MININET} sudo dpctl unix:/tmp/s1 group-mod cmd=add,group=1,type=all
+ Run Command On Remote System ${MININET} sudo dpctl unix:/tmp/s1 flow-mod table=0,cmd=add eth_type=0x800,eth_src=00:01:02:03:04:05 apply:group=1
+ Run Command On Remote System ${MININET} sudo dpctl unix:/tmp/s1 ping 10
+ Run Command On Remote System ${MININET} sudo dpctl unix:/tmp/s2 ping 10