summaryrefslogtreecommitdiffstats
path: root/debian/tests
diff options
context:
space:
mode:
Diffstat (limited to 'debian/tests')
-rw-r--r--debian/tests/control9
-rw-r--r--debian/tests/simpletest21
-rw-r--r--debian/tests/validation28
3 files changed, 58 insertions, 0 deletions
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..21bbc87
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,9 @@
+Tests: simpletest
+Restrictions: isolation-container, needs-internet, needs-root
+Depends: bind9,
+ bind9-dnsutils
+
+Tests: validation
+Restrictions: isolation-container, needs-internet, needs-root, flaky
+Depends: bind9,
+ bind9-dnsutils
diff --git a/debian/tests/simpletest b/debian/tests/simpletest
new file mode 100644
index 0000000..49ca351
--- /dev/null
+++ b/debian/tests/simpletest
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+set -e
+
+setup() (
+ service bind9 stop
+ service bind9 start
+)
+
+run() (
+ # Make a query against a local zone
+ dig -x 127.0.0.1 @127.0.0.1
+)
+
+teardown() (
+ service bind9 stop
+)
+
+setup
+run
+teardown
diff --git a/debian/tests/validation b/debian/tests/validation
new file mode 100644
index 0000000..bf10e12
--- /dev/null
+++ b/debian/tests/validation
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+set -e
+
+setup() (
+ service bind9 stop
+ service bind9 start
+)
+
+run() (
+ repeats=10
+ while [ "${repeats}" -gt "0" ]; do
+ # Make a query against an external nameserver and check for DNSSEC validation
+ echo "Checking for DNSSEC validation status of internetsociety.org"
+ dig -t a internetsociety.org @127.0.0.1 | grep -E 'flags:.+ad; QUERY' && break
+ repeats=$((repeats-1))
+ sleep 1
+ done
+ [ "$repeats" -eq "0" ] && exit 1
+)
+
+teardown() (
+ service bind9 stop
+)
+
+setup
+run
+teardown