UNPKG

2.22 kBJavaScriptView Raw
1var dns = require('../dns');
2
3exports.udp4 = function (test) {
4 var server = dns.createUDPServer();
5
6 var tData = {
7 address: '127.0.0.1',
8 port: 15353,
9 };
10
11 var succeed = false;
12
13 setTimeout(function () {
14 test.ok(succeed, 'Test failed to listen');
15 server.close();
16 }, 300);
17
18 server.on('listening', function () {
19 test.deepEqual(this.address(), tData, 'Not listening on the same port and address');
20 /* currently disabled because of https://github.com/joyent/node/issues/2867 */
21 //this.close();
22 succeed = true;
23 });
24
25 server.on('socketError', function (err, socket) {
26 test.ifError(err, 'Should not have a bind error');
27 this.close();
28 });
29
30 server.on('close', function () {
31 test.done();
32 });
33
34 server.serve(tData.port, tData.address);
35};
36
37exports.udp6 = function (test) {
38 var server = dns.createUDPServer({
39 dgram_type: 'udp6',
40 });
41
42 var tData = {
43 address: '::1',
44 port: 15353,
45 };
46
47 var succeed = false;
48
49 setTimeout(function () {
50 test.ok(succeed, 'Test failed to listen');
51 server.close();
52 }, 300);
53
54 server.on('listening', function () {
55 test.deepEqual(this.address(), tData, 'Not listening on the same port and address');
56
57 /* currently disabled because of https://github.com/joyent/node/issues/2867 */
58 //this.close();
59 succeed = true;
60 });
61
62 server.on('socketError', function (err, socket) {
63 test.ifError(err, 'Should not have a bind error');
64 this.close();
65 });
66
67 server.on('close', function () {
68 test.done();
69 });
70
71 server.serve(tData.port, tData.address);
72};
73
74exports.tcp = function (test) {
75 var server = dns.createTCPServer();
76
77 var tData = {
78 address: '127.0.0.1',
79 port: 15353,
80 };
81
82 server.on('listening', function () {
83 test.equal(this.address().port, tData.port, 'Not listening on the same port and address');
84 test.equal(this.address().address, tData.address, 'Not listening on the same port and address');
85 this.close();
86 });
87
88 server.on('socketError', function (err, socket) {
89 test.ifError(err, 'Should not have a bind error');
90 this.close();
91 });
92
93 server.on('close', function () {
94 test.done();
95 });
96
97 server.serve(tData.port, tData.address);
98};