‚̧Nostradamus Predicting Maelstroms
    Wondering what‚Äôs next for npm?Check out our public roadmap! ¬Ľ

    chai-bignumber

    3.0.0¬†‚Äʬ†Public¬†‚Äʬ†Published

    chai-bignumber

    Build Status

    Chai assertions for comparing arbitrary-precision decimals using the bignumber.js library.

    Installation

    npm install --save-dev chai-bignumber

    Usage

    var chai = require('chai');
     
    //use default BigNumber
    chai.use(require('chai-bignumber')());
     
    //use custom BigNumber
    chai.use(require('chai-bignumber')(BigNumber));

    Assertions

    The following assertion methods are provided and will override the existing builtin assertions if the bignumber property is explicitly set as part of the assertion chain:

    • equal/equals/eq
    • above/gt/greaterThan
    • least/gte
    • below/lt/lessThan
    • most/lte

    The above methods have the following signature: (value, dp, rm). Where dp is an optional argument which specifies the number of decimal places to round each side of the comparison to (values are not rounded by default), while rm is an optional argument which specifies the rounding mode as supported by bignumber.js (defaults to BigNumber.ROUND_HALF_UP).

    A set of additional assertion properties is also provided:

    • finite
    • integer
    • negative
    • zero

    Values can be instances of number, BigNumber or string which can be converted into a valid number. Only BDD style (expect or should) assertions are supported.

    Examples

    Methods:

    var result = new BigNumber('100000000000000000').plus(1);
    var expected = '100000000000000001';
    result.should.be.bignumber.equal(expected);
    expect(result).to.be.bignumber.at.most(expected);
    '1000'.should.be.bignumber.lessThan(2000);

    Methods with rounding:

    var BigNumber = require('bignumber.js');
    (100.343).should.be.bignumber.equal(100.341, 2);
    (100.349).should.be.bignumber.equal(100.341, 2, BigNumber.ROUND_DOWN);

    Properties:

    (100 / 0).should.not.be.finite;
    expect(10).to.be.integer;
    (-100).should.be.negative;
    expect(1 - 1).to.be.zero;

    License

    MIT

    Install

    npm i chai-bignumber

    DownloadsWeekly Downloads

    11,473

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    9.24 kB

    Total Files

    4

    Last publish

    Collaborators

    • avatar