assert is included in Unit.JS core, you can use the assert assertions with Unit.js :
// test 'string' type
test.assert(typeof 'foobar' == 'string');
// then that actual value '==' expected value
test.assert.equal('foobar', 'foobar');
// then that actual value '===' expected value
test.assert.strictEqual('foobar', 'foobar');
// this shortcut works also like this
var assert = test.assert;
// test 'string' type
assert(typeof 'foobar' == 'string');
// then that actual value '==' expected value
assert.equal('foobar', 'foobar');
// then that actual value '===' expected value
assert.strictEqual('foobar', 'foobar');
This documentation below is an adaptation of the official assert API documentation, that is written by the contributors of the "assert" module.
You can access the Node.js module assert directly with test.assert
:
var test = require('unit.js');
var assert = test.assert;
// or if you use only assert
var assert = require('unit.js').assert;
assert.fail(actual, expected, message, operator)
Throws an exception that displays the values for actual
and expected
separated by the provided operator.
assert(value, message), assert.ok(value, [message])
Tests if value is truthy, it is equivalent to assert.equal(true, !!value, message);
assert.equal(actual, expected, [message])
Tests shallow, coercive equality with the equal comparison operator ( ==
).
assert.notEqual(actual, expected, [message])
Tests shallow, coercive non-equality with the not equal comparison operator ( !=
).
assert.deepEqual(actual, expected, [message])
Tests for deep equality.
assert.notDeepEqual(actual, expected, [message])
Tests for any deep inequality.
assert.strictEqual(actual, expected, [message])
Tests strict equality, as determined by the strict equality operator ( ===
)
assert.notStrictEqual(actual, expected, [message])
Tests strict non-equality, as determined by the strict not equal operator ( !==
)
assert.throws(block, [error], [message])
Expects block
to throw an error. error
can be constructor, RegExp
or
validation function.
Validate instanceof using constructor:
test.assert.throws(
function() {
throw new Error("Wrong value");
},
Error
);
Validate error message using RegExp
:
test.assert.throws(
function() {
throw new Error("Wrong value");
},
/value/
);
Custom error validation:
test.assert.throws(
function() {
throw new Error("Wrong value");
},
function(err) {
if ( (err instanceof Error) && /value/.test(err) ) {
return true;
}
},
"unexpected error"
);
assert.doesNotThrow(block, [message])
Expects block
not to throw an error, see assert.throws for details.
assert.ifError(value)
Tests if value is not a false value, throws if it is a true value. Useful when
testing the first argument, error
in callbacks.