Package Exports
- http-assert
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (http-assert) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
http-assert
Assert with status codes. Like ctx.throw() in Koa, but with a guard.
Install
This is a Node.js module available through the
npm registry. Installation is done using the
npm install
command:
$ npm install http-assert
Example
var assert = require('http-assert')
var ok = require('assert')
var username = 'foobar' // username from request
try {
assert(username === 'fjodor', 401, 'authentication failed')
} catch (err) {
ok(err.status === 401)
ok(err.message === 'authentication failed')
ok(err.expose)
}
API
The API of this module is intended to be similar to the
Node.js assert
module.
Each function will throw an instance of HttpError
from
the http-errors
module
when the assertion fails.
assert(value, [status], [message], [properties])
Tests if value
is truthy. If value
is not truthy, an HttpError
is thrown that is constructed with the given status
, message
,
and properties
.
assert.deepEqual(a, b, [status], [message], [properties])
Tests for deep equality between a
and b
. Primitive values are
compared with the Abstract Equality Comparison (==
). If a
and b
are not equal, an HttpError
is thrown that is constructed with the
given status
, message
, and properties
.
assert.equal(a, b, [status], [message], [properties])
Tests shallow, coercive equality between a
and b
using the Abstract
Equality Comparison (==
). If a
and b
are not equal, an HttpError
is thrown that is constructed with the given status
, message
,
and properties
.
assert.fail([status], [message], [properties])
Always throws an HttpError
that is constructed with the given status
,
message
, and properties
.
assert.notDeepEqual(a, b, [status], [message], [properties])
Tests for deep equality between a
and b
. Primitive values are
compared with the Abstract Equality Comparison (==
). If a
and b
are equal, an HttpError
is thrown that is constructed with the given
status
, message
, and properties
.
assert.notEqual(a, b, [status], [message], [properties])
Tests shallow, coercive equality between a
and b
using the Abstract
Equality Comparison (==
). If a
and b
are equal, an HttpError
is
thrown that is constructed with the given status
, message
, and
properties
.
assert.notStrictEqual(a, b, [status], [message], [properties])
Tests strict equality between a
and b
as determined by the SameValue
Comparison (===
). If a
and b
are equal, an HttpError
is thrown
that is constructed with the given status
, message
, and properties
.
assert.ok(value, [status], [message], [properties])
Tests if value
is truthy. If value
is not truthy, an HttpError
is thrown that is constructed with the given status
, message
,
and properties
.
assert.strictEqual(a, b, [status], [message], [properties])
Tests strict equality between a
and b
as determined by the SameValue
Comparison (===
). If a
and b
are not equal, an HttpError
is thrown that is constructed with the given status
, message
,
and properties
.