summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2012-11-05 17:03:50 +0100
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2012-11-05 17:03:50 +0100
commitde983b4ca4a93380b2190dcc86ffb722e7fbbf56 (patch)
tree90f95cf21e9964f76b51c80a223964f34ce67cf4
parent73361cd4105b8b1e993f8220e2844d1ff0798000 (diff)
downloadipset-de983b4ca4a93380b2190dcc86ffb722e7fbbf56.tar.gz
Add tests to check completely ranges with hash types
Test all possible range variations with the hash types in order to catch bugs like the range bug in hash:ip,port,net.
-rw-r--r--tests/hash:ip,port,ip.t36
-rw-r--r--tests/hash:ip,port,net.t36
-rw-r--r--tests/hash:ip,port.t34
-rw-r--r--tests/hash:ip.t20
4 files changed, 126 insertions, 0 deletions
diff --git a/tests/hash:ip,port,ip.t b/tests/hash:ip,port,ip.t
index 26710c6..8096d0c 100644
--- a/tests/hash:ip,port,ip.t
+++ b/tests/hash:ip,port,ip.t
@@ -62,4 +62,40 @@
0 n=`ipset list test|grep '^10.0'|wc -l` && test $n -eq 3072
# Destroy set
0 ipset -X test
+# Create set
+0 ipset create test hash:ip,port,ip
+# Add a single element
+0 ipset add test 10.0.0.1,tcp:80,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 2
+# Delete the single element
+0 ipset del test 10.0.0.1,tcp:80,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add an IP range
+0 ipset add test 10.0.0.1-10.0.0.10,tcp:80,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Delete the IP range
+0 ipset del test 10.0.0.1-10.0.0.10,tcp:80,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add a port range
+0 ipset add test 10.0.0.1,tcp:80-89,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Delete the port range
+0 ipset del test 10.0.0.1,tcp:80-89,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add an IP and port range
+0 ipset add test 10.0.0.1-10.0.0.10,tcp:80-89,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 101
+# Delete the IP and port range
+0 ipset del test 10.0.0.1-10.0.0.10,tcp:80-89,2.2.2.1
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Destroy set
+0 ipset -X test
# eof
diff --git a/tests/hash:ip,port,net.t b/tests/hash:ip,port,net.t
index dad551a..e0c8c08 100644
--- a/tests/hash:ip,port,net.t
+++ b/tests/hash:ip,port,net.t
@@ -92,4 +92,40 @@
0 ipset -T test 2.2.2.2,80,1.1.1.3
# Delete test set
0 ipset destroy test
+# Create set
+0 ipset create test hash:ip,port,net
+# Add a single element
+0 ipset add test 10.0.0.1,tcp:80,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 2
+# Delete the single element
+0 ipset del test 10.0.0.1,tcp:80,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add an IP range
+0 ipset add test 10.0.0.1-10.0.0.10,tcp:80,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Delete the IP range
+0 ipset del test 10.0.0.1-10.0.0.10,tcp:80,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add a port range
+0 ipset add test 10.0.0.1,tcp:80-89,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Delete the port range
+0 ipset del test 10.0.0.1,tcp:80-89,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add an IP and port range
+0 ipset add test 10.0.0.1-10.0.0.10,tcp:80-89,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 101
+# Delete the IP and port range
+0 ipset del test 10.0.0.1-10.0.0.10,tcp:80-89,2.2.2.0/24
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Destroy set
+0 ipset -X test
# eof
diff --git a/tests/hash:ip,port.t b/tests/hash:ip,port.t
index cd1140e..253c6af 100644
--- a/tests/hash:ip,port.t
+++ b/tests/hash:ip,port.t
@@ -80,6 +80,40 @@
0 ipset add test 10.0.0.0-10.0.3.255,tcp:80-82
# Check that correct number of elements are added
0 n=`ipset list test|grep '^10.0'|wc -l` && test $n -eq 3072
+# Flush set
+0 ipset flush test
+# Add an single element
+0 ipset add test 10.0.0.1,tcp:80
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 2
+# Delete the single element
+0 ipset del test 10.0.0.1,tcp:80
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add an IP range
+0 ipset add test 10.0.0.1-10.0.0.10,tcp:80
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Delete the IP range
+0 ipset del test 10.0.0.1-10.0.0.10,tcp:80
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add a port range
+0 ipset add test 10.0.0.1,tcp:80-89
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Delete the port range
+0 ipset del test 10.0.0.1,tcp:80-89
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Add an IP and port range
+0 ipset add test 10.0.0.1-10.0.0.10,tcp:80-89
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 101
+# Delete the IP and port range
+0 ipset del test 10.0.0.1-10.0.0.10,tcp:80-89
+# Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
# Destroy set
0 ipset -X test
# eof
diff --git a/tests/hash:ip.t b/tests/hash:ip.t
index 6da4692..1f00be7 100644
--- a/tests/hash:ip.t
+++ b/tests/hash:ip.t
@@ -114,4 +114,24 @@
0 ipset test test 200.100.0.12
# Network: Delete test set
0 ipset -X test
+# Range: Create set
+0 ipset create test hash:ip
+# Range: Add a single element
+0 ipset add test 10.0.0.1
+# Range: Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 2
+# Range: Delete the element
+0 ipset del test 10.0.0.1
+# Range: Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Range: Add a range
+0 ipset add test 10.0.0.1-10.0.0.10
+# Range: Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 11
+# Range: Delete a range
+0 ipset del test 10.0.0.1-10.0.0.10
+# Range: Check number of elements
+0 n=`ipset save test|wc -l` && test $n -eq 1
+# Range: Delete test set
+0 ipset destroy test
# eof