Assert 断言

    assert.fail(actual, expected, message, operator)

    此函数使用参数operator 测试actual 和expected 是否相等。

    assert.ok(value, [message])

    测试参数value 是否为true,此函数和assert.equal(true, value, message)等价。

    assert.equal(actual, expected, [message])

    此函数为简便测试函数,使用操作符‘==’比较actual 和expected 是否相等。

    此函数为简便测试函数,使用操作符’!=‘比较actual 和expected 是否相等。

    assert.deepEqual(actual, expected, [message])

    执行深度比较是否相等。
    译注:三种比较的不同之处(感谢tytsim):

    assert.notDeepEqual(actual, expected, [message])

    深度比较是否不相等。

    assert.strictEqual(actual, expected, [message])

    assert.notStrictEqual(actual, expected, [message])

    此函数使用操作符‘!==’严格比较是否两参数不相等。

    assert.throws(block, [error], [message])

    测试代码块,期待其抛出异常。

    assert.doesNotThrow(block, [error], [message])

    测试代码块,期待其不抛出异常。

    判断参数value 是否为false,如果为true 则抛出异常。通常用在回调函数中判断是否发生了错误。
    译著,实现代码: