selftests: forwarding: add tests for TC chain get and dump operations
authorJiri Pirko <jiri@mellanox.com>
Thu, 26 Jul 2018 09:38:34 +0000 (11:38 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 26 Jul 2018 16:35:32 +0000 (09:35 -0700)
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/forwarding/tc_chains.sh

index 031e322e28b3352a455ac1461d2537fbb7c636d0..2934fb5ed2a2c776c6c9eedeb47eb6d3266344c1 100755 (executable)
@@ -88,9 +88,30 @@ create_destroy_chain()
        tc chain add dev $h2 ingress
        check_err $? "Failed to create default chain"
 
+       output="$(tc -j chain get dev $h2 ingress)"
+       check_err $? "Failed to get default chain"
+
+       echo $output | jq -e ".[] | select(.chain == 0)" &> /dev/null
+       check_err $? "Unexpected output for default chain"
+
        tc chain add dev $h2 ingress chain 1
        check_err $? "Failed to create chain 1"
 
+       output="$(tc -j chain get dev $h2 ingress chain 1)"
+       check_err $? "Failed to get chain 1"
+
+       echo $output | jq -e ".[] | select(.chain == 1)" &> /dev/null
+       check_err $? "Unexpected output for chain 1"
+
+       output="$(tc -j chain show dev $h2 ingress)"
+       check_err $? "Failed to dump chains"
+
+       echo $output | jq -e ".[] | select(.chain == 0)" &> /dev/null
+       check_err $? "Can't find default chain in dump"
+
+       echo $output | jq -e ".[] | select(.chain == 1)" &> /dev/null
+       check_err $? "Can't find chain 1 in dump"
+
        tc chain del dev $h2 ingress
        check_err $? "Failed to destroy default chain"