Je soupçonne que tu n'appelles pas vraiment test.done()
Dans ce deuxième test. Mettre un console.log()
Appelez là-dedans pour vérifier que vous passez cet appel.
FWIW, j'ai reproduit le problème décrit en utilisant une version simplifiée de votre test ci-dessous. Si vous omettez le on('error', function() {...})
Handler, puis le 2ème test ne parvient pas à se terminer. Ainsi, ma théorie est que votre /push
Le point de terminaison déclenche un comportement différent dans le module Distify. C'est-à-dire que tu es Bien sur Restify invoque votre rappel avec un err
propriété là-bas, ou fait-il quelque chose de différent? ... comme, par exemple, émettre un événement comme http.get
fait, ci-dessous.
var http = require('http');
exports.test1 = function (test) {
test.expect(1);
http.get({hostname: "www.broofa.com", path: "/"}, function (res) {
test.equal(res.statusCode, 200, 'got 200');
test.done();
});
};
exports.test2 = function (test) {
test.expect(1);
http.get({hostname: "www.no-such-domain.com", path: "/"}, function (res) {
test.equal(res.statusCode, 200, 'got 200');
test.done();
}).on('error', function() {
// Comment line below out to repro the "Undone tests" error
test.done();
});
};