summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2023-12-14 17:47:21 +0100
committerFlorian Westphal <fw@strlen.de>2023-12-14 17:51:24 +0100
commit21657008dd4b4094eac017a175f2a3056af36b17 (patch)
treee97435da4497c829a8fc2dc63f8a1356567b33b7 /tests
parent060ed8655d64874a92e6fba2ba9452b2aa94849e (diff)
Revert "evaluate: error out when existing set has incompatible key"
This breaks existing behaviour, add a test case so this is caught in the future. The reverted test case will be brought back once a better fix is available. Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'tests')
-rw-r--r--tests/shell/testcases/bogons/nft-f/range_expr_value_high_assert12
-rwxr-xr-xtests/shell/testcases/transactions/doubled-set22
-rw-r--r--tests/shell/testcases/transactions/dumps/doubled-set.json-nft1
-rw-r--r--tests/shell/testcases/transactions/dumps/doubled-set.nft7
4 files changed, 30 insertions, 12 deletions
diff --git a/tests/shell/testcases/bogons/nft-f/range_expr_value_high_assert b/tests/shell/testcases/bogons/nft-f/range_expr_value_high_assert
deleted file mode 100644
index a25ac028..00000000
--- a/tests/shell/testcases/bogons/nft-f/range_expr_value_high_assert
+++ /dev/null
@@ -1,12 +0,0 @@
-table inet t {
- set s3 {
- type inet_proto
- flags interval
- elements = { 100-11.0.0.0, }
- }
- set s3 {
- type ipv4_addr
- flags interval
- elements = { 100-11.0.0.0, }
- }
-}
diff --git a/tests/shell/testcases/transactions/doubled-set b/tests/shell/testcases/transactions/doubled-set
new file mode 100755
index 00000000..50b568eb
--- /dev/null
+++ b/tests/shell/testcases/transactions/doubled-set
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+# NFT_TEST_REQUIRES(NFT_TEST_HAVE_pipapo)
+
+$NFT -f /dev/stdin <<EOF
+table t {
+ set s {
+ type ipv4_addr . ifname
+ flags interval
+ elements = { 1.2.3.4 . "foo" }
+ }
+
+ set s {
+ type ipv4_addr . ifname
+ flags interval
+ elements = { 1.2.3.4 . "foo" }
+
+ }
+}
+EOF
+
+# run-tests.sh will validate dumpfile.
diff --git a/tests/shell/testcases/transactions/dumps/doubled-set.json-nft b/tests/shell/testcases/transactions/dumps/doubled-set.json-nft
new file mode 100644
index 00000000..00a1af0d
--- /dev/null
+++ b/tests/shell/testcases/transactions/dumps/doubled-set.json-nft
@@ -0,0 +1 @@
+{"nftables": [{"metainfo": {"version": "VERSION", "release_name": "RELEASE_NAME", "json_schema_version": 1}}, {"table": {"family": "ip", "name": "t", "handle": 0}}, {"set": {"family": "ip", "name": "s", "table": "t", "type": ["ipv4_addr", "ifname"], "handle": 0, "flags": ["interval"], "elem": [{"concat": ["1.2.3.4", "foo"]}]}}]}
diff --git a/tests/shell/testcases/transactions/dumps/doubled-set.nft b/tests/shell/testcases/transactions/dumps/doubled-set.nft
new file mode 100644
index 00000000..48a322eb
--- /dev/null
+++ b/tests/shell/testcases/transactions/dumps/doubled-set.nft
@@ -0,0 +1,7 @@
+table ip t {
+ set s {
+ type ipv4_addr . ifname
+ flags interval
+ elements = { 1.2.3.4 . "foo" }
+ }
+}