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