diff mbox

[4/5] tests/shell: add tests for handles and comments

Message ID 144982863023.31246.1243999908078428421.stgit@r2d2.cica.es
State Not Applicable
Delegated to: Pablo Neira
Headers show

Commit Message

Arturo Borrero Dec. 11, 2015, 10:10 a.m. UTC
Here some tests for optional things like rule handles and comments.

Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>
---
 tests/shell/testcases/optionals/comments_0         |    8 ++++++
 tests/shell/testcases/optionals/comments_handles_0 |   10 +++++++
 .../testcases/optionals/comments_handles_monitor_0 |   29 ++++++++++++++++++++
 tests/shell/testcases/optionals/handles_0          |    8 ++++++
 tests/shell/testcases/optionals/handles_1          |    8 ++++++
 5 files changed, 63 insertions(+)
 create mode 100755 tests/shell/testcases/optionals/comments_0
 create mode 100755 tests/shell/testcases/optionals/comments_handles_0
 create mode 100755 tests/shell/testcases/optionals/comments_handles_monitor_0
 create mode 100755 tests/shell/testcases/optionals/handles_0
 create mode 100755 tests/shell/testcases/optionals/handles_1


--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Arturo Borrero Dec. 11, 2015, 1:29 p.m. UTC | #1
> diff --git a/tests/shell/testcases/optionals/comments_handles_monitor_0 b/tests/shell/testcases/optionals/comments_handles_monitor_0
> new file mode 100755
> index 0000000..f1e2004
> --- /dev/null
> +++ b/tests/shell/testcases/optionals/comments_handles_monitor_0
> @@ -0,0 +1,29 @@
> +#!/bin/bash
> +
> +# handles and comments mix well in monitor
> +
> +MKTEMP=$(which mktemp)
> +if [ -x $MKTEMP ] ; then
> +       tmpfile=$(${MKTEMP})
> +else
> +       tmpfile=$(/tmp/${RANDOM})
> +fi
> +
> +if [ ! -w $tmpfile ] ; then
> +       echo "Failed to create tmp file" >&2
> +       exit 0
> +fi
> +
> +trap "rm -rf $tmpfile" EXIT # cleanup if aborted
> +
> +set -e
> +
> +$NFT add table test
> +$NFT add chain test test
> +$NFT monitor -a > $tmpfile &
> +$NFT add rule test test tcp dport 22 counter accept comment test_comment
> +# race :-(
> +sleep 1
> +kill $!
> +grep 'accept comment \"test_comment\" # handle '[[:digit:]]$ $tmpfile >/dev/null
> +rm -rf $tmpfile

This testcase is so bad designed, we should not include it now. Or fix it later.
diff mbox

Patch

diff --git a/tests/shell/testcases/optionals/comments_0 b/tests/shell/testcases/optionals/comments_0
new file mode 100755
index 0000000..29b8506
--- /dev/null
+++ b/tests/shell/testcases/optionals/comments_0
@@ -0,0 +1,8 @@ 
+#!/bin/bash
+
+# comments are shown
+
+$NFT add table test
+$NFT add chain test test
+$NFT add rule test test tcp dport 22 counter accept comment test_comment
+$NFT list table test -a | grep 'accept comment \"test_comment\"' >/dev/null
diff --git a/tests/shell/testcases/optionals/comments_handles_0 b/tests/shell/testcases/optionals/comments_handles_0
new file mode 100755
index 0000000..30539bf
--- /dev/null
+++ b/tests/shell/testcases/optionals/comments_handles_0
@@ -0,0 +1,10 @@ 
+#!/bin/bash
+
+# handles and comments mix well
+
+$NFT add table test
+$NFT add chain test test
+$NFT add rule test test tcp dport 22 counter accept comment test_comment
+set -e
+$NFT list table test -a | grep 'accept comment \"test_comment\" # handle '[[:digit:]]$ >/dev/null
+$NFT list table test | grep 'accept comment \"test_comment\"' | grep -v '# handle '[[:digit:]]$ >/dev/null
diff --git a/tests/shell/testcases/optionals/comments_handles_monitor_0 b/tests/shell/testcases/optionals/comments_handles_monitor_0
new file mode 100755
index 0000000..f1e2004
--- /dev/null
+++ b/tests/shell/testcases/optionals/comments_handles_monitor_0
@@ -0,0 +1,29 @@ 
+#!/bin/bash
+
+# handles and comments mix well in monitor
+
+MKTEMP=$(which mktemp)
+if [ -x $MKTEMP ] ; then
+	tmpfile=$(${MKTEMP})
+else
+	tmpfile=$(/tmp/${RANDOM})
+fi
+
+if [ ! -w $tmpfile ] ; then
+	echo "Failed to create tmp file" >&2
+	exit 0
+fi
+
+trap "rm -rf $tmpfile" EXIT # cleanup if aborted
+
+set -e
+
+$NFT add table test
+$NFT add chain test test
+$NFT monitor -a > $tmpfile &
+$NFT add rule test test tcp dport 22 counter accept comment test_comment
+# race :-(
+sleep 1
+kill $!
+grep 'accept comment \"test_comment\" # handle '[[:digit:]]$ $tmpfile >/dev/null
+rm -rf $tmpfile
diff --git a/tests/shell/testcases/optionals/handles_0 b/tests/shell/testcases/optionals/handles_0
new file mode 100755
index 0000000..7c6a437
--- /dev/null
+++ b/tests/shell/testcases/optionals/handles_0
@@ -0,0 +1,8 @@ 
+#!/bin/bash
+
+# handles are shown last
+
+$NFT add table test
+$NFT add chain test test
+$NFT add rule test test tcp dport 22 counter accept
+$NFT list table test -a | grep 'accept # handle '[[:digit:]]$ >/dev/null
diff --git a/tests/shell/testcases/optionals/handles_1 b/tests/shell/testcases/optionals/handles_1
new file mode 100755
index 0000000..a3ae1a7
--- /dev/null
+++ b/tests/shell/testcases/optionals/handles_1
@@ -0,0 +1,8 @@ 
+#!/bin/bash
+
+# handles are not shown if not asked for them
+
+$NFT add table test
+$NFT add chain test test
+$NFT add rule test test tcp dport 22 counter accept
+$NFT list table test | grep 'accept # handle '[[:digit:]]$ >/dev/null