chai-connect-middleware

Helpers for testing Connect middleware with the Chai assertion library.

npm install chai-connect-middleware
6 downloads in the last day
42 downloads in the last week
353 downloads in the last month

chai-connect-middleware

Build Coverage Quality Dependencies

Helpers for testing Connect middleware with the Chai assertion library.

Install

$ npm install chai-connect-middleware

Usage

Use Plugin

Use this plugin as you would all other Chai plugins:

var chai = require('chai');

chai.use(require('chai-connect-middleware'));

Write Test Cases

Once used, the chai.connect.use helper function will be available to set up test cases for Connect middleware.

The helper function can be called from a hook to setup the test case. The helper returns a wrapper on which callbacks are registered to be executed when the middleware invokes next or ends the response. If the middleware finishes in an unexpected way, the test helper will automatically throw an exception.

The following demonstrates a Mocha test case.

describe('middleware test', function() {
  var res;

  before(function(done) {
    chai.connect.use(middleware)
      .req(function(req) {
        req.query = { hello: 'Bob' };
      })
      .end(function(r) {
        res = r;
        done();
      })
      .dispatch();
  });

  it('should send correct body', function() {
    expect(res.body).to.equal('Hello, Bob');
  });
});

Tests

$ npm install
$ npm test

Credits

License

The MIT License

Copyright (c) 2013 Jared Hanson [http://jaredhanson.net/](http://jaredhanson.net/)

npm loves you