From b62f01087810b43e192ec35d26c4c612d6470eac Mon Sep 17 00:00:00 2001 From: f Date: Tue, 5 Nov 2024 11:17:29 -0300 Subject: [PATCH] fix: tests --- dns/index.test.ts | 4 ++-- dns/index.ts | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/dns/index.test.ts b/dns/index.test.ts index 43c100b..d82465e 100644 --- a/dns/index.test.ts +++ b/dns/index.test.ts @@ -42,7 +42,7 @@ test('basic dns resolve', async t => { const response = await dnsClient.query(`_dnslink.${site.domain}`, 'TXT') t.true(hasAnswer(response, 'ipns'), 'returned dns query has an ipns entry') t.true(hasAnswer(response, 'hyper'), 'returned dns query has a hyper entry') - t.is(response.answers.filter(ans => ![DNS.Packet.Type.NS, DNS.Packet.TYPE.TXT].includes(ans.type)).length, 0, 'should not include any non-TXT and non-NS entries') + t.is(response.answers.filter(ans => ans.type !== DNS.Packet.TYPE.TXT && ans.type !== DNS.Packet.TYPE.NS).length, 0, 'should not include any non-TXT and non-NS entries') }) test('dns should not resolve unknown domains', async t => { @@ -50,5 +50,5 @@ test('dns should not resolve unknown domains', async t => { const port = dnsServer.addresses().udp?.port as number const dnsClient = makeDnsClient(port) const response = await dnsClient.query('_dnslink.unknown.com', 'TXT') - t.is(response.answers.length, 0, 'should not have any answers for unknown domains') + t.is(response.answers.filter(ans => ans.type === DNS.Packet.TYPE.TXT).length, 0, 'should not have any TXT answers for unknown domains') }) diff --git a/dns/index.ts b/dns/index.ts index 596d465..2e80df6 100644 --- a/dns/index.ts +++ b/dns/index.ts @@ -12,6 +12,8 @@ export async function initDnsServer (port: number, store: SiteConfigStore, logge const [{ name }] = request.questions logger?.info(`[dns] ${rinfo.address}:${rinfo.port} asked for ${name}`) + // It will always answer with a NS record so new domains can be + // set up and checked. response.answers.push({ name, type: dns2.Packet.TYPE.NS,