From 8fafe4e6b5b30f2539f16403da8d5c5f819e523b Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Mon, 13 Jun 2022 17:05:22 +0200 Subject: tests: shell: runtime set element automerge Add a test to cover runtime set element automerge. Signed-off-by: Pablo Neira Ayuso --- tests/shell/testcases/sets/automerge_0 | 64 ++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100755 tests/shell/testcases/sets/automerge_0 (limited to 'tests/shell/testcases') diff --git a/tests/shell/testcases/sets/automerge_0 b/tests/shell/testcases/sets/automerge_0 new file mode 100755 index 00000000..c9fb6095 --- /dev/null +++ b/tests/shell/testcases/sets/automerge_0 @@ -0,0 +1,64 @@ +#!/bin/bash + +set -e + +RULESET="table inet x { + set y { + type inet_service + flags interval + auto-merge + } +}" + +$NFT -f - <<< $RULESET + +tmpfile=$(mktemp) +echo -n "add element inet x y { " > $tmpfile +for ((i=0;i<65535;i+=2)) +do + echo -n "$i, " >> $tmpfile + if [ $i -eq 65534 ] + then + echo -n "$i" >> $tmpfile + fi +done +echo "}" >> $tmpfile + +$NFT -f $tmpfile + +tmpfile2=$(mktemp) +for ((i=1;i<65535;i+=2)) +do + echo "$i" >> $tmpfile2 +done + +tmpfile3=$(mktemp) +shuf $tmpfile2 > $tmpfile3 +i=0 +cat $tmpfile3 | while read line && [ $i -lt 10 ] +do + $NFT add element inet x y { $line } + i=$((i+1)) +done + +for ((i=0;i<10;i++)) +do + from=$(($RANDOM%65535)) + to=$(($from+100)) + $NFT add element inet x y { $from-$to } + if [ $? -ne 0 ] + then + echo "failed to add $from-$to" + exit 1 + fi + $NFT get element inet x y { $from-$to } + if [ $? -ne 0 ] + then + echo "failed to get $from-$to" + exit 1 + fi +done + +rm -f $tmpfile +rm -f $tmpfile2 +rm -f $tmpfile3 -- cgit v1.2.3