mardi 10 novembre 2015

Express middleware testing with race condition

I'm having a trouble testing a middleware in Express that utilises promise (using Q library).

Here's an example that resembles my case.

var httpMocks = require('node-mocks-http');
test('should return 404 status', function (done) {
  var req = httpMocks.createRequest(),
  var res = httpMocks.createResponse();

  myMiddleware(req, res);

  expect(req.statusCode).to.equal(404);
});

Let's say, myMiddleware makes a call to another module using promise that calls either next() on resolve or res.status(404).send() on reject.

I mocked the module for testing purpose.

how would I able to catch the end of myMiddleware on reject that does not return with next()?

Cheers!

Aucun commentaire:

Enregistrer un commentaire