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.
---
 tests/ofproto.at |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

I made this for the "next" branch hence [next2] in the subject.

diff --git a/tests/ofproto.at b/tests/ofproto.at
index bb43149..b9dac35 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
-- 
1.7.4.4

_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to