• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2const dns = require('dns');
3const assert = require('assert');
4
5assert(process.env.NODE_TEST_HOST);
6
7const {
8  setDeserializeMainFunction,
9} = require('v8').startupSnapshot;
10
11function onError(err) {
12  console.error('error:', err);
13}
14
15function onLookup(address, family) {
16  console.log(`address: ${JSON.stringify(address)}`);
17  console.log(`family: ${JSON.stringify(family)}`);
18}
19
20function query() {
21  const host = process.env.NODE_TEST_HOST;
22  if (process.env.NODE_TEST_PROMISE === 'true') {
23    dns.promises.lookup(host, { family: 4 }).then(
24      ({address, family}) => onLookup(address, family),
25      onError);
26  } else {
27    dns.lookup(host, { family: 4 }, (err, address, family) => {
28      if (err) {
29        onError(err);
30      } else {
31        onLookup(address, family);
32      }
33    });
34  }
35}
36
37query();
38
39setDeserializeMainFunction(query);
40