1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
import { expect, test } from "bun:test";
import * as dns from "node:dns";
// TODO:
test("it exists", () => {
expect(dns).toBeDefined();
expect(dns.lookup).toBeDefined();
expect(dns.lookupService).toBeDefined();
expect(dns.resolve).toBeDefined();
expect(dns.resolve4).toBeDefined();
expect(dns.resolve6).toBeDefined();
});
test("dns.lookup (localhost)", (done) => {
dns.lookup("localhost", (err, address, family) => {
expect(err).toBeNull();
if (family === 6) {
expect(address).toBe("::1");
} else {
expect(address).toBe("127.0.0.1");
}
done(err);
});
});
test("dns.lookup (example.com)", (done) => {
dns.lookup("example.com", (err, address, family) => {
expect(err).toBeNull();
expect(typeof address).toBe("string");
done(err);
});
});
//TODO: use a bun.sh SRV for testing
test("dns.resolveSrv (_test._tcp.test.socketify.dev)", (done) => {
dns.resolveSrv("_test._tcp.test.socketify.dev", (err, results) => {
expect(err).toBeNull();
expect(results instanceof Array).toBe(true);
expect(results[0].name).toBe("_dc-srv.130c90ab9de1._test._tcp.test.socketify.dev");
expect(results[0].priority).toBe(50);
expect(results[0].weight).toBe(50);
expect(results[0].port).toBe(80);
done(err);
});
});
test("dns.resolveSrv (_test._tcp.invalid.localhost)", (done) => {
dns.resolveSrv("_test._tcp.invalid.localhost", (err, results) => {
expect(err).toBeTruthy();
expect(results).toBeUndefined(true);
done();
});
});
|