From: Vladimír Čunát Date: Mon, 25 May 2020 13:25:40 +0000 (+0200) Subject: modules/hints/tests: test NODATA, fix module order X-Git-Tag: v5.1.2~8^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=db4aad94c86fc356e196124b6dc3e29ac044f63a;p=thirdparty%2Fknot-resolver.git modules/hints/tests: test NODATA, fix module order --- diff --git a/modules/hints/tests/hints.test.lua b/modules/hints/tests/hints.test.lua index 0c483e6e0..ed97bc45a 100644 --- a/modules/hints/tests/hints.test.lua +++ b/modules/hints/tests/hints.test.lua @@ -2,7 +2,7 @@ local utils = require('test_utils') -- setup resolver -modules = { 'hints' } +modules = { 'hints > iterate' } -- test for default configuration local function test_default() @@ -31,7 +31,34 @@ local function test_custom() 'real IP address for a.root-servers.net. is correct') end +-- test that setting an address hint works (TODO: and NXDOMAIN) +local function test_nxdomain() + hints.config() -- clean start + hints.use_nodata(false) + hints['myname.lan'] = '192.0.2.1' + -- TODO: prefilling or some other way of getting NXDOMAIN (instead of SERVFAIL) + utils.check_answer('bad name gives NXDOMAIN', + 'badname.lan', kres.type.A, kres.rcode.SERVFAIL) + utils.check_answer('another type gives NXDOMAIN', + 'myname.lan', kres.type.AAAA, kres.rcode.SERVFAIL) + utils.check_answer('record itself is OK', + 'myname.lan', kres.type.A, kres.rcode.NOERROR) +end + +-- test that NODATA is correctly generated +local function test_nodata() + hints.config() -- clean start + hints.use_nodata(true) -- default ATM but let's not depend on that + hints['myname.lan'] = '2001:db8::1' + utils.check_answer('another type gives NODATA', + 'myname.lan', kres.type.MX, utils.NODATA) + utils.check_answer('record itself is OK', + 'myname.lan', kres.type.AAAA, kres.rcode.NOERROR) +end + return { test_default, - test_custom + test_custom, + test_nxdomain, + test_nodata, }