hapi-test-request

0.0.4 • Public • Published

Hapi request test helper

Build Status npm version Dependency Status Follow @trailsjs on Twitter

HTTP assertions made easy for Hapi using Promises

Requirements

This module requires Node.js v4.1+

Usage

Server file should export server server.js:

'use strict';
 
const Hapi = require('hapi');
 
// Create a server with a host and port
const server = new Hapi.Server();
server.connection({
    host: 'localhost',
    port: 8000
});
 
// Add the route
server.route({
    method: 'GET',
    path:'/hello',
    handler: function (request, reply) {
      return reply({
        test: true
      });
    }
});
 
server.route({
  method: 'GET',
  path: '/api/v1/test',
  handler: function (request, reply) {
    reply({
      test: true
    });
  }
});
 
// Start the server
server.start((err) => {
    if (err) {
        throw err;
    }
});
 
// !!!!!!!
module.exports = server;
 

Example of some.test.js:

const server = require('../server.js');
const request = require('hapi-test-request')(server);
 
//...
let.it('something', (done) => {
  request.call({
   method: 'POST',
   url: '/mail',
   payload: {
     email: 'someemail@email.com'
   }
  }).then((response) => {
    // ....
    expect(response.statusCode).to.equal(200);
    done();
  });
});

Options for testing

{
  prefix: '/api/v1' // Will add prefix for all requests
}

Example:

const server = require('./server');
const request = require('hapi-test-request');
const lab = require('lab');
 
lab.it('Some tests', (done) => {
  const config = {
    prefix: '/api/v1'
  };
  request(server, config)
    .call({
      method: 'GET',
      url: '/test' // will be merged with prefix. Will be called: /api/v1/test
    })
    .then((res) => {
      expect(res.statusCode).to.equal(200);
    })
    .then(done)
    .catch(done);
});

License

MIT

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.0.4
    0
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 0.0.4
    0
  • 0.0.3
    0
  • 0.0.2
    0

Package Sidebar

Install

npm i hapi-test-request

Weekly Downloads

0

Version

0.0.4

License

MIT

Last publish

Collaborators

  • kos