gpt4 book ai didi

javascript - 在单元测试中创建具有特定属性的错误对象

转载 作者:行者123 更新时间:2023-12-03 08:47:36 25 4
gpt4 key购买 nike

我正在尝试对我的以下代码进行单元测试

try {
return await request.post(options);
} catch (err) {
if (err.statusCode === 401) {
log.info('Not authenticated. Refreshing token...');
const tokenResponse =
await Janus.refreshToken(graph.username, graph.password, graph.host, graph.port);
const token = tokenResponse.body.token;
graph.token = token;
return gremlinQuery(graph, query);
}
log.error(`Gremlin script didn't pass : ${err}`);
}

为了测试 catch 中包含的行部分,我 stub post功能:
stubPost.callsFake(() => Promise.reject(new Error()));

如何使用属性 statusCode 实现错误? Error构造函数正在等待 string作为输入。我不能传递一个对象或类似的东西吗?

最佳答案

一种方法可能如下

MyApiError = function(data) {
this.code = data.code;
this.message = data.message
}
MyApiError.prototype = Error.prototype;

var e = new MyApiError({code: 33, message: 'test'});

e.code; // 33
e.message; // 'test'

关于javascript - 在单元测试中创建具有特定属性的错误对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50293087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com