Skip to content

Commit d3e2fc8

Browse files
Trottcodebytere
authored andcommitted
test: fix test-dns-idna2008
The DNS server will sometimes return an IPv6 address (as seen in nightly CI from time to time). Use `family` option to force IPv4. PR-URL: #33367 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
1 parent c2cf978 commit d3e2fc8

File tree

1 file changed

+25
-19
lines changed

1 file changed

+25
-19
lines changed

test/internet/test-dns-idna2008.js

+25-19
Original file line numberDiff line numberDiff line change
@@ -16,31 +16,37 @@ const { addresses } = require('../common/internet');
1616
const fixture = {
1717
hostname: 'straße.de',
1818
expectedAddress: '81.169.145.78',
19-
dnsServer: addresses.DNS4_SERVER
19+
dnsServer: addresses.DNS4_SERVER,
20+
family: 4,
2021
};
2122

22-
// Explicitly use well behaved DNS servers that are known to be able to resolve
23+
// Explicitly use well-behaved DNS servers that are known to be able to resolve
2324
// the query (which is a.k.a xn--strae-oqa.de).
2425
dns.setServers([fixture.dnsServer]);
2526

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-
}
31-
assert.ifError(err);
32-
assert.strictEqual(address, fixture.expectedAddress);
33-
}));
27+
dns.lookup(
28+
fixture.hostname,
29+
{ family: fixture.family },
30+
mustCall((err, address) => {
31+
if (err && err.errno === 'ESERVFAIL') {
32+
assert.ok(err.message.includes('queryA ESERVFAIL straße.de'));
33+
return;
34+
}
35+
assert.ifError(err);
36+
assert.strictEqual(address, fixture.expectedAddress);
37+
})
38+
);
3439

35-
dns.promises.lookup(fixture.hostname).then(({ address }) => {
36-
assert.strictEqual(address, fixture.expectedAddress);
37-
}, (err) => {
38-
if (err && err.errno === 'ESERVFAIL') {
39-
assert.ok(err.message.includes('queryA ESERVFAIL straße.de'));
40-
} else {
41-
throw err;
42-
}
43-
}).finally(mustCall());
40+
dns.promises.lookup(fixture.hostname, { family: fixture.family })
41+
.then(({ address }) => {
42+
assert.strictEqual(address, fixture.expectedAddress);
43+
}, (err) => {
44+
if (err && err.errno === 'ESERVFAIL') {
45+
assert.ok(err.message.includes('queryA ESERVFAIL straße.de'));
46+
} else {
47+
throw err;
48+
}
49+
}).finally(mustCall());
4450

4551
dns.resolve4(fixture.hostname, mustCall((err, addresses) => {
4652
if (err && err.errno === 'ESERVFAIL') {

0 commit comments

Comments
 (0)