程序员开发实例大全宝库

网站首页 > 编程文章 正文

【开源资讯】Node.js v14.2.0 发布

zazugpt 2024-08-29 02:08:35 编程文章 15 ℃ 0 评论

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/

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表