aboutsummaryrefslogtreecommitdiffstats
path: root/src/ngMock
AgeCommit message (Collapse)Author
2013-08-29fix(ngMocks): $logProvider should not use internal APIsAdam de Baugh
angular.mocks.$LogProvider $logProvider.debugEnabled(false) is crashing with undefined when run inside karma/jasmine test runner: angular.module('foo', []).config(['$logProvider', function ($logProvider) { $logProvider.debugEnabled(false); }]); Closes #3612
2013-08-27revert: feat(mocks): make $timeout#flush throw an exception when emptyIgor Minar
This reverts commit cbf06a5d64aba537f0e2679a194d3998d8365493. This turned out to be a bad idea because it allow us to fast-forward the wall clock time (see previous commit).
2013-08-27revert: fix(mocks): $timeout#flush should not update time when emptyIgor Minar
This reverts commit 42af8eada2803a54a98b4f792e60feb480d68a0c. This turned out to be a bad idea as it prevents us from moving the time forward and asserting that the component state didn't change due to the scheduled task executing too early.
2013-08-25fix(mocks): $timeout#flush should not update time when emptyIgor Minar
When $timeout#flush is called with a delay and no task can be flushed within that delay, the current time should not be updated as that gets the mock into an inconsistent state. BREAKING CHANGE: if a tests was written around the buggy behavior the delays might be off now This would typically not be a problem, but because of the previous breaking change in $timeout.flush, the combination of two might be confusing and that's why we are documenting it. Old behavior: ``` doSomething(); //schedules task to execute in 500ms from now doOtherStuff(); //schedules task to execute in 600ms from now try { $timeout.flush(300); // throws "no task to be flushed" exception } catch(e) {}; $time.flush(200); //flushes only doSomething() task ``` New behavior: ``` doSomething(); //schedules task to execute in 500ms from now doOtherStuff(); //schedules task to execute in 600ms from now try { $timeout.flush(300); // throws "no task to be flushed" exception } catch(e) {}; $time.flush(200); // throws "no task to be flushed" exception again // because previous exception didn't move the time forward ``` Fixed test: ``` doSomething(); //schedules task to execute in 500ms from now doOtherStuff(); //schedules task to execute in 600ms from now try { $timeout.flush(300); // throws "no task to be flushed" exception } catch(e) {}; $time.flush(500); // flushes only doSomething() task ```
2013-08-25feat(mocks): make $timeout#flush throw an exception when emptyIgor Minar
When calling $timeout.flush with or without a delay an exception should be thrown if there is nothing to be flushed. This prevents tests from flushing stuff unnecessarily. BREAKING CHANGE: calling $timeout.flush(delay) when there is no task to be flushed within the delay throws an exception now. Please adjust the delay or remove the flush call from your tests as the exception is a signed of a programming error.
2013-08-13chore(mocks): remove obsolte createMockWindow apiIgor Minar
we never released this api, so it's safe to remove
2013-08-09docs(httpBackend): update documentation for expect methodsSanti Albo
`expect` methods can receive an Object as the data parameter, which was undocumented.
2013-08-07chore(dump): fix our karma.dump bridgeIgor Minar
previously it didn't work for dumping multiple objects
2013-08-06feat(ngMock/$httpBackend): support a matching function for data paramKen Chen
Add support for passing function as validating data: - To avoid hacking test method of RegExp - Optionally overwrite `toString` method of fn to show validation tips - change docs: param description for `when`, `whenPost`, `whenPut`, `expect`, `expectPost`, `expectPut`, `expectPATCH` Closes: #2981
2013-08-02chore(ngMock): remove unused $animate delegation methodsMatias Niemelä
2013-08-02chore(ngMock): rename $animate.process to $animate.flushNext()Matias Niemelä
2013-08-01fix(ngMock): keep withCredentials on passThroughÉtienne Barrié
When using passThrough() and specifying withCredentials on the $http call, the option is now passed to the underlying $httpBackend.
2013-07-31fix(mock.$log): keep in sync with $logChirayu Krishnappa
Closes #2343
2013-07-26feat(ngAnimate): complete rewrite of animationsMatias Niemelä
- ngAnimate directive is gone and was replaced with class based animations/transitions - support for triggering animations on css class additions and removals - done callback was added to all animation apis - $animation and $animator where merged into a single $animate service with api: - $animate.enter(element, parent, after, done); - $animate.leave(element, done); - $animate.move(element, parent, after, done); - $animate.addClass(element, className, done); - $animate.removeClass(element, className, done); BREAKING CHANGE: too many things changed, we'll write up a separate doc with migration instructions
2013-07-26feat(ngMock): $timeout.flushNext can expect specific timeout delaysMatias Niemelä
the $timeout mock's flush method allows flushing queued up requests but doesn't allow to for checking with what delay a task was queued up. flushNext flushes the next queued up task and can asserts the scheduled delay.
2013-07-26feat(ngMock): support delay limit for $timeout.flushMatias Niemelä
2013-07-22chore(dump): remove dead codeIgor Minar
This code is not being used any more and the test is now failing due to Karma changes. Karma used to expose window.dump but that changed recently and that's why our build is now failing. I'm removing the code and test, but we still need to figure out how to route window.dump through angular.mock.dump, but that will have to be a separate commit.
2013-07-14style(ngMock): add missing whitespaceDavid
2013-07-10docs(ngMock): correct verifyNoOutstandingExpectation exampleMark Striemer
2013-06-27docs(ngMock/$httpBackend): fix testing examplePete Bacon Darwin
Closes #3075
2013-06-19feat(jqLite): switch bind/unbind to more recent jQuery on/offMichał Gołębiowski
jQuery switched to a completely new event binding implementation as of 1.7.0, centering around on/off methods instead of previous bind/unbind. This patch makes jqLite match this implementation while still supporting previous bind/unbind methods.
2013-06-17fix(ngMock): ensure mocked window still provides window.location functionalityMatias Niemelä
2013-06-04docs(angular-mocks): fix typo in exampleRobb Shecter
fromJSON() should be fromJson()
2013-05-24feat(ngError): add error message compression and better error messagesIgor Minar
- add toThrowNg matcher
2013-05-20feat($http): add support for aborting via timeout promisesDavid Bennett
If the timeout argument is a promise, abort the request when it is resolved. Implemented by adding support to $httpBackend service and $httpBackend mock service. This api can also be used to explicitly abort requests while keeping the communication between the deffered and promise unidirectional. Closes #1159
2013-05-18docs(ngMock::$log): improve the `$log.*.logs` descriptionsChris M
Because ngDoc generation only takes the last segment of a property name, each $log.[error|warn|log...].logs property has the same name and is confusing in the docs. This commit helps this by adding a link to the $log.* method and also an appropriate usage example.
2013-04-11docs: fix typosMatt Haggard
2013-04-11fix(ngAnimate): skip animation on first renderMatias Niemelä
2013-04-11docs(angular-mocks): fix wordingBrent Morrow
2013-04-02feat(ngAnimate): add support for animationMisko Hevery
2013-03-29docs(mocks): fix typosGert Goet
2013-03-27feat(http): support request/response promise chainingSylvester Keil
myApp.factory('myAroundInterceptor', function($rootScope, $timeout) { return function(configPromise, responsePromise) { return { request: configPromise.then(function(config) { return config }); response: responsePromise.then(function(response) { return 'ha!'; } }); } myApp.config(function($httpProvider){ $httpProvider.aroundInterceptors.push('myAroundInterceptor'); });
2013-03-27fix(mock): prevent NPE when module definition outside of it.Misko Hevery
2013-02-25docs(ngMock): fix minor typo in commentMatt Ginzton
Change "constroctor" to "constructor".
2013-02-25docs(ngMock): remove Jasmine-only comments now that Mocha worksMatt Ginzton
Remove comments about angular.mock.inject and angular.mock.module being available for jasmine only. Since 1.1.1 the intent is that they be available for mocha as well; now they even work!
2013-02-25fix(ngMock): fix isSpecRunning to work for MochaMatt Ginzton
When running inside Mocha, don't look in Jasmine's spec.queue.running. It's not there. This is documented as issue #1467; I think this issue was also responsible for #1589 and recent complaints in #1253. Closes #1467.
2013-02-07feat(dateFilter): add `[.,]sss` formatter for millisecondsMaxim Grach
Also Implement getMilliseconds() method of TzDate and add test for this in ngMock.
2013-01-17docs(exceptionHandler): document testingFred Sauer
Update src/ng/exceptionHandler.js Here's an iniitla attempt at documenting how one might write a test using $exceptionHandlerProvider. The key take-away is the use of this pattern: it(...  module(...    $exceptionHandlerProvider.mode('log');  });  inject(...  ); });
2013-01-18docs(ngMock.$httpBackend): fix variable declarationFred Sauer
2012-12-20feat($timeout-mock): add verifyNoPendingTasks methodpetrovalex
added verifyNoPendingTasks method, which throws error if not all deferred tasks have been flushed Closes #1245
2012-12-06docs(mocks): update src/ngMock/angular-mocks.js documentationFred Sauer
Clarify how to use `$exceptionHandlerProvider.mode('log')` in tests
2012-12-06docs(mocks): fix documentation bug: angular.mock.debugFred Sauer
2012-09-06feat(mocha): support mocha in angular mocksCameron Westland
2012-08-30fix(mocks): free up memory after every specVojta Jina
2012-06-14fix($location): fix URL interception in hash-bang modeMisko Hevery
Closes #1051
2012-06-12docs($browser): hide $browser docs - it's a private serviceIgor Minar
2012-06-12fix($defer): remove deprecated $defer serviceIgor Minar
2012-06-12docs(*): simplify doc urlsIgor Minar
we now have two types of namespaces: - true namespace: angular.* - used for all global apis - virtual namespace: ng.*, ngMock.*, ... - used for all DI modules the virual namespaces have services under the second namespace level (e.g. ng.) and filters and directives prefixed with filter: and directive: respectively (e.g. ng.filter:orderBy, ng.directive:ngRepeat) this simplifies urls and makes them a lot shorter while still avoiding name collisions
2012-06-02feat($rootElement): added application root elementMisko Hevery
Publish the application root element as $rootElement so that it can be injected to other services.
2012-05-24fix(docs): accept return in addition to returnsMisko Hevery
documentation used @return but parser expected @returns, which made the generated documentation incomplete.