我有一个较旧的Ember-cli应用程序,我刚刚更新到所有最新的依赖项和文件格式,我已经ember init
与ember-cli@0.2.0-beta.1
一起运行,但当我尝试写一个接受时使用visit()
帮助程序进行测试,内部wait
函数永远无法解析。
我能够追踪问题的最远的是wait
文件中的bower_components/ember/ember.js
函数。
if (run.hasScheduledTimers() || run.currentRunLoop) { return; }
backburner上有一个计时器,但是一次又一次,循环返回到这里,它似乎永远不会有机会清除计时器。
我很确定计时器应该确保wait
助手在ajax请求之后等待,但是ajax请求早已解决了。哎呀,如果还有待处理的请求,我们就会退出这个功能。
非常感谢对此过程的任何见解!!
答案 0 :(得分:4)
我的应用程序中有一个Em.run.later
的实例循环,以递归方式检查超时。事实证明,这并不罕见!
我的解决方案是将run.later
块放在当前环境的条件检查中,并在测试中禁用它。