webtap
A TAP wrapper for testing webservers
Usage
Write a test for your webserver:
// test/test.js var webtap = ; var test = ; ; ;
Then execute it:
$ tap test/test.jsTAP version 13# GET / ok 1 status code 404ok 2 friendly message# custom name ok 3 status code 404ok 4 friendly message 1..4# tests 4 # pass 4 # ok
API
var test = webtap(server)
Return the test
function. server
can either be a request handler function (e.g. what express
exports) or a server from http.createServer()
.
test([name, ]method[, path], cb)
Fire a request with method
on path
to the given server
can call cb
with:
t
, the TAP test objectres
, the response object fromhttp.request()
The test name is either name
or a combination of method
and path
, like GET /
.
path
can be left out if method
already contains the path, like:
;;
t.body(str[, msg])
t
is augmented by a body
method that buffers the request body into a string, compares it with
str
and then calls t.end()
to finish the test.
If str
is not a string but any other JavaScript object, the response will be parsed as JSON and
compared to str
.
t.*
See the tap documentation.
Installation
With npm do
$ npm install webtap
and
$ npm install -g tap
License
(MIT)