assert.fail(actual, expected[, message[, operator[, stackStartFn]]])
历史
版本 | 变化 |
---|---|
v10.0.0 | 不推荐使用多个参数调用 |
v0.1.21 | 添加于:v0.1.21 |
Stability: 0 - 已弃用:改用
assert.fail([message])
或其他断言函数。参数
actual
<any>expected
<any>message
<string> | <Error>operator
<string> 默认:'!='
stackStartFn
<Function> 默认:assert.fail
如果 message
为假,则错误消息设置为 actual
和 expected
的值,由提供的 operator
分隔。如果只提供了两个 actual
和 expected
参数,则 operator
将默认为 '!='
。如果 message
作为第三个参数提供,它将用作错误消息,其他参数将作为属性存储在抛出的对象上。如果提供了stackStartFn
,则该函数上方的所有堆栈帧都将从堆栈跟踪中删除(请参阅
)。如果没有给出参数,将使用默认消息Error.captureStackTrace
Failed
。
import assert from 'node:assert/strict';
assert.fail('a', 'b');
// AssertionError [ERR_ASSERTION]: 'a' != 'b'
assert.fail(1, 2, undefined, '>');
// AssertionError [ERR_ASSERTION]: 1 > 2
assert.fail(1, 2, 'fail');
// AssertionError [ERR_ASSERTION]: fail
assert.fail(1, 2, 'whoops', '>');
// AssertionError [ERR_ASSERTION]: whoops
assert.fail(1, 2, new TypeError('need array'));
// TypeError: need array
const assert = require('node:assert/strict');
assert.fail('a', 'b');
// AssertionError [ERR_ASSERTION]: 'a' != 'b'
assert.fail(1, 2, undefined, '>');
// AssertionError [ERR_ASSERTION]: 1 > 2
assert.fail(1, 2, 'fail');
// AssertionError [ERR_ASSERTION]: fail
assert.fail(1, 2, 'whoops', '>');
// AssertionError [ERR_ASSERTION]: whoops
assert.fail(1, 2, new TypeError('need array'));
// TypeError: need array
在最后三种情况下 actual
、 expected
和 operator
对错误消息没有影响。
使用stackStartFn
截断异常堆栈跟踪的示例:
import assert from 'node:assert/strict';
function suppressFrame() {
assert.fail('a', 'b', undefined, '!==', suppressFrame);
}
suppressFrame();
// AssertionError [ERR_ASSERTION]: 'a' !== 'b'
// at repl:1:1
// at ContextifyScript.Script.runInThisContext (vm.js:44:33)
// ...
const assert = require('node:assert/strict');
function suppressFrame() {
assert.fail('a', 'b', undefined, '!==', suppressFrame);
}
suppressFrame();
// AssertionError [ERR_ASSERTION]: 'a' !== 'b'
// at repl:1:1
// at ContextifyScript.Script.runInThisContext (vm.js:44:33)
// ...
相关用法
- Node.js assert.fail()用法及代码示例
- Node.js assert.fail([message])用法及代码示例
- Node.js assert.notEqual(actual, expected[, message])用法及代码示例
- Node.js assert.notDeepStrictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.deepStrictEqual()用法及代码示例
- Node.js assert.deepEqual(actual, expected[, message])用法及代码示例
- Node.js assert.throws(fn[, error][, message])用法及代码示例
- Node.js assert.equal()用法及代码示例
- Node.js assert.ifError()用法及代码示例
- Node.js assert.throws()用法及代码示例
- Node.js assert.ok()用法及代码示例
- Node.js assert.strictEqual()用法及代码示例
- Node.js assert.strictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.doesNotThrow(fn[, error][, message])用法及代码示例
- Node.js assert.notStrictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.deepStrictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.match()用法及代码示例
- Node.js assert.notDeepStrictEqual()用法及代码示例
- Node.js assert.doesNotThrow()用法及代码示例
- Node.js assert.rejects()用法及代码示例
- Node.js assert.doesNotReject(asyncFn[, error][, message])用法及代码示例
- Node.js assert.rejects(asyncFn[, error][, message])用法及代码示例
- Node.js assert.match(string, regexp[, message])用法及代码示例
- Node.js assert.equal(actual, expected[, message])用法及代码示例
- Node.js assert.ifError(value)用法及代码示例
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 assert.fail(actual, expected[, message[, operator[, stackStartFn]]])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。