UNPKG

2.3 kBJavaScriptView Raw
1var dgram = require('dgram'),
2 net = require('net'),
3 fs = require('fs');
4
5var config = {
6 address: '127.0.0.1',
7 port: 8125
8};
9var msg = "This is a test\r\n";
10
11module.exports = {
12 udp_data_received: function(test) {
13 test.expect(3);
14 var server = require('../servers/udp');
15 var started = server.start(config, function(data, rinfo) {
16 test.equal(msg, data.toString());
17 test.equal(msg.length, rinfo.size);
18 test.done();
19 });
20 test.ok(started);
21
22 var buf = new Buffer(msg);
23 var sock = dgram.createSocket('udp4');
24 sock.send(buf, 0, buf.length, config.port, config.address, function(err, bytes) {
25 sock.close();
26 });
27 },
28 tcp_data_received: function(test) {
29 test.expect(3);
30 var server = require('../servers/tcp');
31 var started = server.start(config, function(data, rinfo) {
32 test.equal(msg, data.toString());
33 test.equal(msg.length, rinfo.size);
34 test.done();
35 });
36 test.ok(started);
37
38 var client = net.connect(config.port, config.address, function() {
39 client.write(msg);
40 client.end();
41 });
42 },
43 tcp_data_buffered: function(test) {
44 test.expect(3);
45 var server = require('../servers/tcp');
46 var splitmsg = msg.split(' ');
47 config.port = 8126;
48 var started = server.start(config, function(data, rinfo) {
49 test.equal(msg, data.toString());
50 test.equal(msg.length, rinfo.size);
51 test.done();
52 });
53 test.ok(started);
54
55 var client = net.connect(config.port, config.address, function() {
56 client.setNoDelay(true);
57 splitmsg.forEach(function(part) {
58 client.write(part);
59 client.write(' ');
60 });
61 client.end();
62 });
63 },
64 unix_socket_data_received: function(test) {
65 test.expect(3);
66 var server = require('../servers/tcp');
67 config.socket = './statsd_tmp.socket';
68 var started = server.start(config, function (data, rinfo) {
69 test.equal(msg, data.toString());
70 test.equal(msg.length, rinfo.size);
71 fs.unlinkSync(config.socket);
72 config.socket = undefined;
73 test.done();
74 });
75
76 test.ok(started);
77
78 var client = net.connect(config.socket, function () {
79 client.write(msg);
80 client.end();
81 });
82 }
83};