diff options
author | 2023-10-31 09:54:48 +0300 | |
---|---|---|
committer | 2023-10-30 23:54:48 -0700 | |
commit | 732650d6a43d235d36a9bf8717766e012f445461 (patch) | |
tree | f8a3fa8806412cec30510a1489709da1225197a9 /test/js/node/dns/node-dns.test.js | |
parent | b29d68bbaf8d759a9063d32944776064bf732659 (diff) | |
download | bun-732650d6a43d235d36a9bf8717766e012f445461.tar.gz bun-732650d6a43d235d36a9bf8717766e012f445461.tar.zst bun-732650d6a43d235d36a9bf8717766e012f445461.zip |
fix: provide nodejs compat for dns methods wrapped with util.promisify (#6748)
* fix: add nodejs compat for dns methods wrapping with util.promisify
* fix: use single symbol for util.promisify.custom
* style: linting
Diffstat (limited to 'test/js/node/dns/node-dns.test.js')
-rw-r--r-- | test/js/node/dns/node-dns.test.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/js/node/dns/node-dns.test.js b/test/js/node/dns/node-dns.test.js index 1988e9155..edf58308a 100644 --- a/test/js/node/dns/node-dns.test.js +++ b/test/js/node/dns/node-dns.test.js @@ -3,6 +3,7 @@ import * as dns from "node:dns"; import * as dns_promises from "node:dns/promises"; import * as fs from "node:fs"; import * as os from "node:os"; +import * as util from "node:util"; // TODO: test("it exists", () => { @@ -405,3 +406,31 @@ describe("lookup deprecated behavior", () => { }); }); }); + +describe("uses `dns.promises` implementations for `util.promisify` factory", () => { + it.each([ + "lookup", + "lookupService", + "resolve", + "reverse", + "resolve4", + "resolve6", + "resolveAny", + "resolveCname", + "resolveCaa", + "resolveMx", + "resolveNs", + "resolvePtr", + "resolveSoa", + "resolveSrv", + "resolveTxt", + "resolveNaptr", + ])("%s", method => { + expect(dns[method][util.promisify.custom]).toBe(dns_promises[method]); + expect(dns.promises[method]).toBe(dns_promises[method]); + }); + + it("util.promisify(dns.lookup) acts like dns.promises.lookup", async () => { + expect(await util.promisify(dns.lookup)("example.com")).toEqual(await dns.promises.lookup("example.com")); + }); +}); |