1 README unbound tests 2 3 For a quick test that runs unit tests and state machine tests, use 4 make test 5 6 There is a long test setup for unbound that needs tools installed. Use 7 make longtest 8 To make and run the long tests. The results are summarized at the end. 9 10 You need to have the following programs installed and in your PATH. 11 * dig - from the bind-tools package. Used to send DNS queries. 12 * splint (optional) - for lint test 13 * doxygen (optional) - for doc completeness test 14 * ldns-testns - from ldns examples. Used as DNS auth server. 15 * xxd and nc (optional) - for (malformed) packet transmission. 16 The optional programs are detected and can be omitted. 17 18 You can also use prepared Dockerfile to run tests inside docker based on latest gcc image: 19 * build container: docker build -t unbound-tester -f contrib/Dockerfile.tests . 20 * run container: docker run -it --mount type=bind,source="$(pwd)",target=/usr/src/unbound --rm unbound-tester 21 * configure environment: ./configure 22 * run test: make test 23 * run long tests: make longtest 24 It is worth to mention that you need to enable [ipv6 in your docker daemon configuration](https://docs.docker.com/config/daemon/ipv6/) because some tests need ipv6 network stack. 25 26 testdata/ contains the data for tests. 27 testcode/ contains scripts and c code for the tests. 28 29 do-tests.sh : runs all the tests in the testdata directory. 30 testbed.sh : compiles on a set of (user specific) hosts and runs do-tests. 31 32 Tests are run using testcode/mini_tpkg.sh. 33