qunit-assert-close
v2.1.2
Published
A QUnit plugin for asserting that a number is approximately equal (or not) to an expected number, within a given tolerance.
Downloads
1,314
Maintainers
Readme
QUnit Close assertion plugin
This plugin for QUnit adds close
, notClose
, close.percent
, and notClose.percent
assertion methods to test that a number is approximately equal (or not) to an expected number, within a given tolerance.
Usage
assert.close(actual, expected, maxDifference, message);
assert.notClose(actual, expected, minDifference, message);
assert.close.percent(actual, expected, maxPercentDifference, message);
// Alternatively:
assert.closePercent(actual, expected, maxPercentDifference, message);
assert.notClose.percent(actual, expected, minPercentDifference, message);
// Alternatively:
assert.notClosePercent(actual, expected, minPercentDifference, message);
Where:
maxDifference
: the maximum inclusive difference allowed (tolerance) between theactual
andexpected
numbersminDifference
: the minimum exclusive difference allowed (tolerance) between theactual
andexpected
numbersactual
,expected
,message
: The usual
Examples
Example 1: Number differences
QUnit.test('Example number unit test', function(assert) {
assert.close(3.141, Math.PI, 0.001);
assert.notClose(3.1, Math.PI, 0.001);
});
Example 2: Percentage differences
QUnit.test('Example percentage unit test', function(assert) {
assert.close.percent(155, 150, 3.4); // Difference is ~3.33%
assert.notClose.percent(156, 150, 3.5); // Difference is 4.0%
});
For more examples, refer to the unit tests.