new file mode 100755
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+# Tests use of variable before definition.
+
+set -e
+
+tmpfile=$(mktemp)
+if [ ! -w $tmpfile ] ; then
+ echo "Failed to create tmp file" >&2
+ exit 0
+fi
+
+trap "rm -rf $tmpfile" EXIT # cleanup if aborted
+
+echo "
+define var2 = \$var1
+define var1 = lo
+
+table ip t {
+ chain c {
+ iif \$var2
+ }
+}" >> $tmpfile
+
+$NFT -f $tmpfile
new file mode 100755
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+# Tests redefinition of an existing variable.
+
+set -e
+
+tmpfile=$(mktemp)
+if [ ! -w $tmpfile ] ; then
+ echo "Failed to create tmp file" >&2
+ exit 0
+fi
+
+trap "rm -rf $tmpfile" EXIT # cleanup if aborted
+
+echo "
+define var1 = lo
+define var1 = lo
+
+table ip t {
+ chain c {
+ iif \$var1
+ }
+}" >> $tmpfile
+
+$NFT -f $tmpfile
new file mode 100755
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+# Tests recursive definition of a variable.
+
+set -e
+
+tmpfile=$(mktemp)
+if [ ! -w $tmpfile ] ; then
+ echo "Failed to create tmp file" >&2
+ exit 0
+fi
+
+trap "rm -rf $tmpfile" EXIT # cleanup if aborted
+
+echo "
+define var1 = \$var1
+
+table ip t {
+ chain c {
+ iif \$var1
+ }
+}" >> $tmpfile
+
+$NFT -f $tmpfile
This patch adds test cases for a variable definition and redefinition. Signed-off-by: Varsha Rao <rvarsha016@gmail.com> --- tests/shell/testcases/nft-f/0013defines_1 | 25 +++++++++++++++++++++++++ tests/shell/testcases/nft-f/0014defines_1 | 25 +++++++++++++++++++++++++ tests/shell/testcases/nft-f/0015defines_1 | 24 ++++++++++++++++++++++++ 3 files changed, 74 insertions(+) create mode 100755 tests/shell/testcases/nft-f/0013defines_1 create mode 100755 tests/shell/testcases/nft-f/0014defines_1 create mode 100755 tests/shell/testcases/nft-f/0015defines_1