内容简介:Node.js v14.2.0 发布了,主要更新内容包括: 使用 assert.CallTracker 跟踪函数调用(实验) assert.CallTracker 是一个新的实验性 API,它允许跟踪并稍后验证函数被调用的次数。通过创建一个 CallTracker 对象并...
Node.js v14.2.0 发布了,主要更新内容包括:
使用 assert.CallTracker 跟踪函数调用(实验)
assert.CallTracker 是一个新的实验性 API,它允许跟踪并稍后验证函数被调用的次数。通过创建一个 CallTracker 对象并使用其 calls 方法来创建包装器函数,该函数将在每次调用它们时计数。然后,可以使用 verify 方法来断言预期的调用次数:
const assert = require('assert');
const tracker = new assert.CallTracker();
function func() {}
// callsfunc() must be called exactly twice before tracker.verify().
const callsfunc = tracker.calls(func, 2);
callsfunc();
callsfunc();
function otherFunc() {}
// The second parameter defaults to `1`.
const callsotherFunc = tracker.calls(otherFunc);
callsotherFunc();
// Calls tracker.verify() and verifies if all tracker.calls() functions have
// been called the right number of times.
process.on('exit', () => {
tracker.verify();
});
此外,tracker.report() 将返回一个数组,其中包含有关错误的信息(如果存在):
const assert = require('assert');
const tracker = new assert.CallTracker();
function func() {}
const callsfunc = tracker.calls(func);
console.log(tracker.report());
/*
[
{
message: 'Expected the func function to be executed 1 time(s) but was executed 0 time(s).',
actual: 0,
expected: 1,
operator: 'func',
stack: Error
...
}
]
*/
控制台 groupIndentation 选项
控制台构造函数(require('console').Console)现在支持不同的组缩进。
const { Console } = require('console');
const customConsole = new Console({
stdout: process.stdout,
stderr: process.stderr,
groupIndentation: 10
});
customConsole.log('foo');
// 'foo'
customConsole.group();
customConsole.log('foo');
// 'foo'
更新说明:https://nodejs.org/en/blog/release/v14.2.0/
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Lighttpd源码分析
高群凯 / 机械工业出版社 / 2010-3 / 59.00元
本书主要针对lighttpd源码进行了深度剖析。主要内容包括:lighttpd介绍与分析准备工作、lighttpd网络服务主模型、lighttpd数据结构、伸展树、日志系统、文件状态缓存器、配置信息加载、i/o多路复用技术模型、插件链、网络请求服务响应流程、请求响应数据快速传输方式,以及基本插件模块。本书针对的lighttpd项目版本为稳定版本1.4.20。 本书适合使用lighttpd的人......一起来看看 《Lighttpd源码分析》 这本书的介绍吧!