This module is used for writing unit tests for your applications.

First things first, do const assert = require('assert');

    // `assert.notEqual(actual, expected[, message])`
    // shallow comparison with `!=` operator 

    assert.notEqual(1, 1);      // Assertion error
    assert.notEqual(1, '1');    // Assertion error
    assert.notEqual({name: 'K'}, {name: 'K'})   // OK

    // `assert.notStrictEqual(actual, expected[, message])`
    // comparison with `!==` operator 

    assert.notStrictEqual(1, 1);      // Assertion error
    assert.notStrictEqual(1, '1');    // OK
    assert.notStrictEqual({name: 'K'}, {name: 'K'})   // OK

    // `assert.ok(value[, message])`
    // check for truthy value

    assert.ok(1);       // OK
    assert.ok({});          // OK
    assert.ok(new Error());      // OK
    assert.ok(null);    // Assertion error

    // `assert.strictEqual(actual, expected[, message])` 
    // comparison with '===' operator

    // `assert.equal(actual, expected[, message])` 
    // shallow comparison with '==' operator

    // `assert.throws(block[, error][, message])`
    // expects `block` function to throw an error of constructor
    // defined in second argument

    assert.throws(() => {throw new Error();});  // OK
    assert.throws(() => {console.log('No errors in this block');});  // Assertion error
    assert.throws(() => {throw new Error();}, Error);  // OK
    assert.throws(() => {throw new Error();}, Warning);  // Assertion error

    // `assert.doesNotThrow(block[, message])`
    // doesn't expect `block` function to throw an error

    // `assert.deepEqual(actual, expected[, message])`
    // deep comparison
    assert.deepEqual({
            name: 'g',
            age: 11,
            kids: [4, 8, 9, 10],
            adderss: {
                street: 11,
                city: 'TY',
                state: [{id: 0, name: 'KKR'}]
            }
        }, {
            name: 'g',
            age: 11,
            kids: [4, 8, 9, 10],
            adderss: {
                street: 11,
                city: 'TY',
                state: [{id: 0, name: 'KKR'}]
            }
        });                     // OK

    // `assert.ifError(value)`
    // if truthy then throws it back
    // if falsy do nothing
    // if error then throws it back (useful while testing the first argument, error in callbacks.)

    assert.ifError(56);     // OK i.e. throws 56
    assert.ifError(null);   // OK
    assert.ifError(new Error());    // throws error
    

References