gpt4 book ai didi

javascript - 模拟命名导入和构造函数 ES6 和 Ava

转载 作者:行者123 更新时间:2023-12-03 23:57:41 24 4
gpt4 key购买 nike

我有一个类构造函数,其中包含一个我想 stub 的函数:

class Service {
constructor(){}
async someFunction() {
try {
// does stuff
}
catch (e) {}
}
}

在我要测试的文件中,这是这样导入和使用的:

const { Service } = require('something')
const newService = new Service('xyz')

我正在努力让它在我的测试中正确导入和 stub 。

目前正在这样导入:

t.context.service = {
Service: class Service {
constructor () {
this.someFunction = sinon.stub()
}
}
}

这个导入似乎有效,但是我无法通过构建的版本获得对它的引用。在这方面有什么帮助吗?

我希望能够做出如下断言:

t.true(t.context.service.Service.someFunction.calledOnce)

最佳答案

AVA 不提供任何 stub 。看看https://github.com/testdouble/testdouble.js/http://sinonjs.org/ .

关于javascript - 模拟命名导入和构造函数 ES6 和 Ava,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46216702/

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