当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Node.js assert.fail(actual, expected[, message[, operator[, stackStartFn]]])用法及代码示例

assert.fail(actual, expected[, message[, operator[, stackStartFn]]])

历史
版本变化
v10.0.0

不推荐使用多个参数调用 assert.fail() 并发出警告。

v0.1.21

添加于:v0.1.21

Stability: 0 - 已弃用:改用 assert.fail([message]) 或其他断言函数。

参数

如果 message 为假,则错误消息设置为 actualexpected 的值,由提供的 operator 分隔。如果只提供了两个 actualexpected 参数,则 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 arrayconst 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

在最后三种情况下 actualexpectedoperator 对错误消息没有影响。

使用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)
//     ...

相关用法


注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 assert.fail(actual, expected[, message[, operator[, stackStartFn]]])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。