assert.doesNotReject(asyncFn[, error][, message])
添加于:v10.0.0
参数
asyncFn
<Function> | <Promise>error
<RegExp> | <Function>message
<string>
等待 asyncFn
承诺,或者,如果 asyncFn
是一个函数,则立即调用该函数并等待返回的承诺完成。然后它将检查承诺是否未被拒绝。
如果asyncFn
是一个函数并且它同步抛出一个错误,那么assert.doesNotReject()
将返回一个带有该错误的被拒绝的Promise
。如果函数没有返回承诺,assert.doesNotReject()
将返回一个被拒绝的 Promise
并带有
错误。在这两种情况下,都会跳过错误处理程序。ERR_INVALID_RETURN_VALUE
使用assert.doesNotReject()
实际上没有用,因为捕获拒绝然后再次拒绝它几乎没有什么好处。相反,请考虑在不应拒绝的特定代码路径旁边添加注释,并尽可能保持错误消息的表达性。
如果指定,error
可以是
、 Class
或验证函数。有关详细信息,请参阅RegExp
。assert.throws()
除了等待完成的异步性质外,其行为与
相同。assert.doesNotThrow()
import assert from 'node:assert/strict'; await assert.doesNotReject( async () => { throw new TypeError('Wrong value'); }, SyntaxError );
const assert = require('node:assert/strict'); (async () => { await assert.doesNotReject( async () => { throw new TypeError('Wrong value'); }, SyntaxError ); })();
import assert from 'node:assert/strict'; assert.doesNotReject(Promise.reject(new TypeError('Wrong value'))) .then(() => { // ... });
const assert = require('node:assert/strict'); assert.doesNotReject(Promise.reject(new TypeError('Wrong value'))) .then(() => { // ... });
相关用法
- Node.js assert.doesNotThrow(fn[, error][, message])用法及代码示例
- Node.js assert.doesNotThrow()用法及代码示例
- Node.js assert.doesNotMatch()用法及代码示例
- Node.js assert.doesNotMatch(string, regexp[, message])用法及代码示例
- Node.js assert.deepStrictEqual()用法及代码示例
- Node.js assert.deepEqual(actual, expected[, message])用法及代码示例
- Node.js assert.deepStrictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.deepEqual()用法及代码示例
- Node.js assert.notEqual(actual, expected[, message])用法及代码示例
- Node.js assert.notDeepStrictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.fail(actual, expected[, message[, operator[, stackStartFn]]])用法及代码示例
- 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.fail()用法及代码示例
- Node.js assert.strictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.notStrictEqual(actual, expected[, message])用法及代码示例
- Node.js assert.match()用法及代码示例
- Node.js assert.notDeepStrictEqual()用法及代码示例
- Node.js assert.rejects()用法及代码示例
- Node.js assert.rejects(asyncFn[, error][, message])用法及代码示例
- Node.js assert.match(string, regexp[, message])用法及代码示例
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 assert.doesNotReject(asyncFn[, error][, message])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。