aboutsummaryrefslogtreecommitdiffstats
path: root/src/angular-mocks.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/angular-mocks.js')
-rw-r--r--src/angular-mocks.js19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/angular-mocks.js b/src/angular-mocks.js
index a4941288..20423f05 100644
--- a/src/angular-mocks.js
+++ b/src/angular-mocks.js
@@ -281,15 +281,32 @@ function MockBrowser() {
self.cookieHash = {};
self.lastCookieHash = {};
self.deferredFns = [];
+ self.deferredNextId = 0;
self.defer = function(fn, delay) {
delay = delay || 0;
- self.deferredFns.push({time:(self.defer.now + delay), fn:fn});
+ self.deferredFns.push({time:(self.defer.now + delay), fn:fn, id: self.deferredNextId});
self.deferredFns.sort(function(a,b){ return a.time - b.time;});
+ return self.deferredNextId++;
};
+
self.defer.now = 0;
+
+ self.defer.cancel = function(deferId) {
+ var fnIndex;
+
+ forEach(self.deferredFns, function(fn, index) {
+ if (fn.id === deferId) fnIndex = index;
+ });
+
+ if (fnIndex) {
+ self.deferredFns.splice(fnIndex, 1);
+ }
+ }
+
+
self.defer.flush = function(delay) {
if (angular.isDefined(delay)) {
self.defer.now += delay;