@silvermine/chai-strictly-equal
    TypeScript icon, indicating that this package has built-in type declarations

    1.1.0 • Public • Published

    Silvermine Chai Strictly Equal Plugin

    Build Status Coverage Status Dependency Status Dev Dependency Status

    What is it?

    A plugin for the Chai Assertion Library that adds a .strictlyEqual method, and disables the .equal method.

    Why?

    Because the difference in .eql (deep equality) and .equal (strict equality) is way too subtle. Chai provides .deep modifier that modifies .equal to be a deep equality check (as if it were .eql), further complicating the matter. It would be nice if there were a .strictly modifier so that you could do .to.strictly.eql(foo), but that doesn't exist, and would be more difficult to add. So, for any Silvermine codebases where we are using chai, we will use this plugin and prohibit the use of .equal, replacing it with .strictlyEqual to be more easily readable - especially for developers not familiar with our codebase.

    How do I use it?

    var chai = require('chai');
    
    chai.use(require('@silvermine/chai-strictly-equal'));

    Or, if you are using TypeScript:

    import chai from 'chai';
    import enableStrictlyEqual from '@silvermine/chai-strictly-equal';
    
    chai.use(enableStrictlyEqual);

    That's all there is to it. Then your .equal calls will throw an error, indicating that you should replace them with .eql or .strictlyEqual.

    How do I contribute?

    We genuinely appreciate external contributions. See our extensive documentation on how to contribute.

    License

    This software is released under the MIT license. See the license file for more details.

    Install

    npm i @silvermine/chai-strictly-equal

    DownloadsWeekly Downloads

    142

    Version

    1.1.0

    License

    MIT

    Unpacked Size

    11.6 kB

    Total Files

    12

    Last publish

    Collaborators

    • jthomerson
    • onebytegone
    • webpub