| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 693505b commit 476dc7e
1 file changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -11,23 +11,41 @@ | |||
| 11 | 11 | const { mustCall } = require('../common'); | |
| 12 | 12 | const assert = require('assert'); | |
| 13 | 13 | const dns = require('dns'); | |
| 14 | + const { addresses } = require('../common/internet'); | ||
| 14 | 15 | ||
| 15 | - const [host, expectedAddress] = ['straße.de', '81.169.145.78']; | ||
| 16 | + const fixture = { | ||
| 17 | + hostname: 'straße.de', | ||
| 18 | + expectedAddress: '81.169.145.78', | ||
| 19 | + dnsServer: addresses.DNS4_SERVER | ||
| 20 | + }; | ||
| 16 | 21 | ||
| 17 | - dns.lookup(host, mustCall((err, address) => { | ||
| 22 | + // Explicitly use well behaved DNS servers that are known to be able to resolve | ||
| 23 | + // the query (which is a.k.a xn--strae-oqa.de). | ||
| 24 | + dns.setServers([fixture.dnsServer]); | ||
| 25 | + | ||
| 26 | + dns.lookup(fixture.hostname, mustCall((err, address) => { | ||
| 27 | + if (err && err.errno === 'ESERVFAIL') { | ||
| 28 | + assert.ok(err.message.includes('queryA ESERVFAIL straße.de')); | ||
| 29 | + return; | ||
| 30 | + } | ||
| 18 | 31 | assert.ifError(err); | |
| 19 | - assert.strictEqual(address, expectedAddress); | ||
| 32 | + assert.strictEqual(address, fixture.expectedAddress); | ||
| 20 | 33 | })); | |
| 21 | 34 | ||
| 22 | - dns.promises.lookup(host).then(mustCall(({ address }) => { | ||
| 23 | - assert.strictEqual(address, expectedAddress); | ||
| 35 | + dns.promises.lookup(fixture.hostname).then(mustCall(({ address }) => { | ||
| 36 | + assert.strictEqual(address, fixture.expectedAddress); | ||
| 37 | + }).catch((err) => { | ||
| 38 | + if (err && err.errno === 'ESERVFAIL') { | ||
| 39 | + assert.ok(err.message.includes('queryA ESERVFAIL straße.de')); | ||
| 40 | + } | ||
| 24 | 41 | })); | |
| 25 | 42 | ||
| 26 | - dns.resolve4(host, mustCall((err, addresses) => { | ||
| 43 | + dns.resolve4(fixture.hostname, mustCall((err, addresses) => { | ||
| 27 | 44 | assert.ifError(err); | |
| 28 | - assert.deepStrictEqual(addresses, [expectedAddress]); | ||
| 45 | + assert.deepStrictEqual(addresses, [fixture.expectedAddress]); | ||
| 29 | 46 | })); | |
| 30 | 47 | ||
| 31 | - new dns.promises.Resolver().resolve4(host).then(mustCall((addresses) => { | ||
| 32 | - assert.deepStrictEqual(addresses, [expectedAddress]); | ||
| 48 | + const p = new dns.promises.Resolver().resolve4(fixture.hostname); | ||
| 49 | + p.then(mustCall((addresses) => { | ||
| 50 | + assert.deepStrictEqual(addresses, [fixture.expectedAddress]); | ||
| 33 | 51 | })); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments