现在我有一个jQuery插件,可以添加一些额外的自定义(围绕如何处理某些上下文中的返回数据)并轮询服务器以获取信息和更改。其中一个必需功能是允许用户设置轮询间隔。 setTimeout
(与递归配对)是用于创建常量轮询的函数;这也是一项要求。
这是我难倒的地方:除了上面提到的所需功能外,我还必须测试用户指定的值是否实际用于setTimeout。我将如何从QUnit角度进行此操作?
我已经考虑使用Date.getTime()直接计时函数,但是当前设置的方式不是一个选项。
答案 0 :(得分:0)
考虑以一种方式重构代码,让你覆盖在测试中启动超时的方法,允许你验证是否传递了正确的值,而不实际启动超时。
如果你需要实际调用setTimeout,可以考虑使用sinon.js来模拟setTimeout本身并控制它的作用。