
在上述情况下,摩卡链
$rootScope.$apply()被调用后返回了保证,因此链式
then需要另一个
$rootScope.$apply()执行。没有这个,承诺链的其余部分将不会执行,并导致超时。
Mocha规范中的返回承诺旨在用于异步规范,这对于测试非角度承诺是必需的。
$q承诺是同步的,并且与Angular摘要相关。
如图所示这里,
chai-as-promised可以进行修改,以支持
$q承诺,并申请
$rootScope.$apply()自动断言承诺:
chaiAsPromised.transferPromiseness = function (assertion, promise) { assertion.then = promise.then.bind(promise); if (!('$$state' in promise)) return; inject(function ($rootScope) { if (!$rootScope.$$phase) $rootScope.$digest(); });};欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)