fix many test problems (#1677)

* fix many test problems

- adds [stoppable](https://npm.im/stoppable) to force-stop net & http
  servers
- upgrades to latest mocha
- much cleanup of servers
- some removal of useless code

Signed-off-by: Christopher Hiller <boneskull@boneskull.com>

* increase wait time to hack at race condition

* PoC with fork of stoppable

Signed-off-by: Christopher Hiller <boneskull@boneskull.com>

* fix custom stoppable url for newer npm

* make travis go faster; attempt to avoid npm troubles

* fix coveralls executable path

* add extra time for flake to trigger spec

Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
This commit is contained in:
Christopher Hiller
2018-04-23 04:37:26 -07:00
committed by Nick O'Leary
parent 25345302e8
commit e1195ac00a
33 changed files with 267 additions and 194 deletions

View File

@@ -19,6 +19,7 @@ var http = require("http");
var should = require("should");
var express = require("express");
var bodyParser = require('body-parser');
var stoppable = require('stoppable');
var helper = require("../../helper.js");
var httpRequestNode = require("../../../../nodes/core/io/21-httprequest.js");
var hashSum = require("hash-sum");
@@ -30,13 +31,10 @@ describe('HTTP Request Node', function() {
function startServer(done) {
testPort += 1;
testServer = http.createServer(testApp);
testServer.on('error', function(err) {
startServer(done);
});
testServer = stoppable(http.createServer(testApp));
testServer.listen(testPort,function(err) {
done();
})
done(err);
});
}
function getTestURL(url) {
@@ -57,13 +55,18 @@ describe('HTTP Request Node', function() {
}
res.json(result);
});
startServer(function() {
startServer(function(err) {
if (err) {
done(err);
}
helper.startServer(done);
});
});
after(function() {
testServer.close();
after(function(done) {
testServer.stop(() => {
helper.stopServer(done);
});
});
afterEach(function() {
helper.unload();

View File

@@ -61,6 +61,10 @@ describe('websocket Node', function() {
helper.startServer(done);
});
after(function(done) {
helper.stopServer(done);
});
afterEach(function() {
closeAll();
helper.unload();

View File

@@ -16,6 +16,7 @@
var net = require("net");
var should = require("should");
var stoppable = require('stoppable');
var helper = require("../../helper.js");
var tcpinNode = require("../../../../nodes/core/io/31-tcpin.js");
@@ -26,20 +27,13 @@ describe('TCP in Node', function() {
var server_port = 9300;
var reply_data = undefined;
before(function(done) {
done();
});
after(function() {
});
beforeEach(function(done) {
startServer(done);
});
afterEach(function() {
stopServer();
afterEach(function(done) {
helper.unload();
stopServer(done);
});
function sendArray(sock, array) {
@@ -55,15 +49,15 @@ describe('TCP in Node', function() {
function startServer(done) {
server_port += 1;
server = net.createServer(function(c) {
server = stoppable(net.createServer(function(c) {
sendArray(c, reply_data);
}).listen(server_port, "localhost", function(err) {
})).listen(server_port, "localhost", function(err) {
done(err);
});
}
function stopServer() {
server.close();
function stopServer(done) {
server.stop(done);
}
function send(wdata) {

View File

@@ -16,6 +16,7 @@
var net = require("net");
var should = require("should");
var stoppable = require('stoppable');
var helper = require("../../helper.js");
var tcpinNode = require("../../../../nodes/core/io/31-tcpin.js");
@@ -26,7 +27,7 @@ describe('TCP Request Node', function() {
function startServer(done) {
port += 1;
server = net.createServer(function(c) {
server = stoppable(net.createServer(function(c) {
c.on('data', function(data) {
var rdata = "ACK:"+data.toString();
c.write(rdata);
@@ -34,7 +35,7 @@ describe('TCP Request Node', function() {
c.on('error', function(err) {
startServer(done);
});
}).listen(port, "127.0.0.1", function(err) {
})).listen(port, "127.0.0.1", function(err) {
done();
});
}
@@ -43,8 +44,8 @@ describe('TCP Request Node', function() {
startServer(done);
});
after(function() {
server.close();
after(function(done) {
server.stop(done);
});
afterEach(function() {

View File

@@ -27,7 +27,8 @@ describe('UDP in Node', function() {
helper.startServer(done);
});
after(function() {
after(function(done) {
helper.stopServer(done);
});
afterEach(function() {

View File

@@ -27,7 +27,8 @@ describe('UDP out Node', function() {
helper.startServer(done);
});
after(function() {
after(function(done) {
helper.stopServer(done);
});
afterEach(function() {
@@ -38,7 +39,7 @@ describe('UDP out Node', function() {
var sock = dgram.createSocket('udp4');
sock.on('message', function(msg, rinfo) {
msg.should.deepEqual(data);
done();
sock.close(done);
});
sock.bind(port, '127.0.0.1');
port++;