From: Ben Pfaff Date: Fri, 14 Sep 2012 20:04:15 +0000 (-0700) Subject: tests: Fix sensitivity to record ordering in test-netflow output. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=52440c192b8dcb5d4519838e9a249ba3ae672cf6;p=openvswitch tests: Fix sensitivity to record ordering in test-netflow output. The order of records in a NetFlow message is essentially random, but the test case was picky about it. I started getting failures when I modified apparently unrelated code, so here's a fix. Signed-off-by: Ben Pfaff --- diff --git a/tests/ofproto-dpif.at b/tests/ofproto-dpif.at index cc5d770b..de56ef8f 100644 --- a/tests/ofproto-dpif.at +++ b/tests/ofproto-dpif.at @@ -968,13 +968,13 @@ AT_CHECK([[sed -e 's/, uptime [0-9]*// s/, now [0-9.]*// s/time \([0-9]*\)\.\.\.\1$/time / s/time [0-9]*\.\.\.[0-9]*/time / -' netflow.log]], [0], - [header: v5, seq 0, engine 2,1 -rec: 192.168.0.1 > 192.168.0.2, if 1 > 65535, 1 pkts, 60 bytes, ICMP 8:0, time - +' netflow.log | sort]], [0], + [ +header: v5, seq 0, engine 2,1 header: v5, seq 1, engine 2,1 -rec: 192.168.0.2 > 192.168.0.1, if 2 > 1, 2 pkts, 120 bytes, ICMP 0:0, time -rec: 192.168.0.1 > 192.168.0.2, if 1 > 2, 1 pkts, 60 bytes, ICMP 8:0, time +seq 0: 192.168.0.1 > 192.168.0.2, if 1 > 65535, 1 pkts, 60 bytes, ICMP 8:0, time +seq 1: 192.168.0.1 > 192.168.0.2, if 1 > 2, 1 pkts, 60 bytes, ICMP 8:0, time +seq 1: 192.168.0.2 > 192.168.0.1, if 2 > 1, 2 pkts, 120 bytes, ICMP 0:0, time ]) AT_CLEANUP @@ -1032,13 +1032,13 @@ while read line; do esac case $line in - "rec: 192.168.0.1 > 192.168.0.2, if 1 > 65535, "*" pkts, "*" bytes, TCP 1234 > 80, time "*) + "seq "*": 192.168.0.1 > 192.168.0.2, if 1 > 65535, "*" pkts, "*" bytes, TCP 1234 > 80, time "*) counter=n_learn ;; - "rec: 192.168.0.1 > 192.168.0.2, if 1 > 2, "*" pkts, "*" bytes, TCP 1234 > 80, time "*) + "seq "*": 192.168.0.1 > 192.168.0.2, if 1 > 2, "*" pkts, "*" bytes, TCP 1234 > 80, time "*) counter=n_in ;; - "rec: 192.168.0.2 > 192.168.0.1, if 2 > 1, "*" pkts, "*" bytes, TCP 80 > 1234, time "*) + "seq "*": 192.168.0.2 > 192.168.0.1, if 2 > 1, "*" pkts, "*" bytes, TCP 80 > 1234, time "*) counter=n_out ;; *) diff --git a/tests/test-netflow.c b/tests/test-netflow.c index 85ab5e74..c37eeafe 100644 --- a/tests/test-netflow.c +++ b/tests/test-netflow.c @@ -74,7 +74,7 @@ print_netflow(struct ofpbuf *buf) return; } - printf("rec: "IP_FMT" > "IP_FMT, + printf("seq %"PRIu32": "IP_FMT" > "IP_FMT, ntohl(hdr->flow_seq), IP_ARGS(&rec->src_addr), IP_ARGS(&rec->dst_addr)); printf(", if %"PRIu16" > %"PRIu16,