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]]])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。