From: Ben Pfaff Date: Wed, 1 Jun 2011 00:09:43 +0000 (-0700) Subject: ofproto: Add simple tests for dumping aggregates and for OpenFlow 1.0. X-Git-Tag: v1.2.0~196 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=c168dcc8f7b87579ac6c6a5d0e133377f41cb9f0;p=sliver-openvswitch.git ofproto: Add simple tests for dumping aggregates and for OpenFlow 1.0. We had no tests that exercised OFPST_AGGREGATE or NXST_AGGREGATE. At one point in development I screwed up aggregate stats badly enough that they caused an immediate and reproducible segfault, which this simple test would have caught. Also, it's best to test everything in both NXM and OpenFlow 1.0 flow formats, since they have slightly different code. --- diff --git a/tests/ofproto.at b/tests/ofproto.at index bb43149f9..b9dac35a1 100644 --- a/tests/ofproto.at +++ b/tests/ofproto.at @@ -42,7 +42,7 @@ done OFPROTO_STOP AT_CLEANUP -AT_SETUP([ofproto - basic flow_mod commands]) +AT_SETUP([ofproto - basic flow_mod commands (NXM)]) OFPROTO_START AT_CHECK([ovs-ofctl dump-flows br0 | STRIP_XIDS], [0], [NXST_FLOW reply: ]) @@ -53,8 +53,31 @@ AT_CHECK([ovs-ofctl dump-flows br0 | STRIP_XIDS | STRIP_DURATION | sort], [0], [ cookie=0x0, duration=?s, table_id=0, n_packets=0, n_bytes=0, in_port=1 actions=output:0 NXST_FLOW reply: ]) +AT_CHECK([ovs-ofctl dump-aggregate br0 | STRIP_XIDS], [0], [dnl +NXST_AGGREGATE reply: packet_count=0 byte_count=0 flow_count=2 +]) AT_CHECK([ovs-ofctl del-flows br0]) AT_CHECK([ovs-ofctl dump-flows br0 | STRIP_XIDS], [0], [NXST_FLOW reply: ]) OFPROTO_STOP AT_CLEANUP + +AT_SETUP([ofproto - basic flow_mod commands (OpenFlow 1.0)]) +OFPROTO_START +AT_CHECK([ovs-ofctl -F openflow10 dump-flows br0 | STRIP_XIDS], [0], [OFPST_FLOW reply: +]) +AT_CHECK([echo 'in_port=1,actions=0' | ovs-ofctl -F openflow10 add-flows br0 -]) +AT_CHECK([ovs-ofctl -F openflow10 add-flow br0 in_port=0,actions=1]) +AT_CHECK([ovs-ofctl -F openflow10 dump-flows br0 | STRIP_XIDS | STRIP_DURATION | sort], [0], [dnl + cookie=0x0, duration=?s, table_id=0, n_packets=0, n_bytes=0, in_port=0 actions=output:1 + cookie=0x0, duration=?s, table_id=0, n_packets=0, n_bytes=0, in_port=1 actions=output:0 +OFPST_FLOW reply: +]) +AT_CHECK([ovs-ofctl -F openflow10 dump-aggregate br0 | STRIP_XIDS], [0], [dnl +OFPST_AGGREGATE reply: packet_count=0 byte_count=0 flow_count=2 +]) +AT_CHECK([ovs-ofctl -F openflow10 del-flows br0]) +AT_CHECK([ovs-ofctl -F openflow10 dump-flows br0 | STRIP_XIDS], [0], [OFPST_FLOW reply: +]) +OFPROTO_STOP +AT_CLEANUP