feat($timeout): add $timeout service that supersedes $defer

$timeout has a better name ($defer got often confused with something related to $q) and
is actually promise based with cancelation support.

With this commit the $defer service is deprecated and will be removed before 1.0.

Closes #704, #532
This commit is contained in:
Igor Minar
2012-05-22 23:05:26 -07:00
parent 15b8f205bb
commit 4511d39cc7
8 changed files with 284 additions and 1 deletions

View File

@@ -313,6 +313,23 @@ describe('ngMock', function() {
});
describe('$timeout', function() {
it('should expose flush method that will flush the pending queue of tasks', inject(
function($timeout) {
var logger = [],
logFn = function(msg) { return function() { logger.push(msg) }};
$timeout(logFn('t1'));
$timeout(logFn('t2'), 200);
$timeout(logFn('t3'));
expect(logger).toEqual([]);
$timeout.flush();
expect(logger).toEqual(['t1', 't3', 't2']);
}));
});
describe('angular.mock.dump', function(){
var d = angular.mock.dump;