aboutsummaryrefslogtreecommitdiffstats
path: root/test/testabilityPatch.js
AgeCommit message (Collapse)Author
2012-05-17fix(jqLite): have same expando format as jQueryMisko Hevery
2012-05-14fix(jqLite): .data()/.bind() memory leakMisko Hevery
Since angular attaches scope/injector/controller into DOM it should clean up after itself. No need to complain about memory leaks, since they can only happened on detached DOM. Detached DOM would only be in tests, since in production the DOM would be attached to render tree and removal would automatically clear memory.
2012-05-03chore(testabilityPatch): print number of leaked references if anyIgor Minar
2012-05-03chore(trace): add helper method traceIgor Minar
use it as trace('label') to dump the stack during debugging
2012-03-28chore(Rakefile): get ready for modulesMisko Hevery
2012-03-09chore(*): refactor all ng: to ng-Igor Minar
2012-03-05refactor(testabilityPatch): Change JSTD fail to more general throwVojta Jina
"fail" is a JSTD specific API, so it's not defined when testing without JSTD (eg SlimJim).
2012-01-25refactor(directives): connect new compilerMisko Hevery
- turn everything into a directive
2012-01-25add($compile): add compiler v2.0 - not connectedMisko Hevery
2012-01-25feat(test): support it('should', pending);Misko Hevery
2012-01-23chore(log): generic test log service with custom toEquals matcherIgor Minar
- any test that needs a logger can just inject provideLog - logger has susict api that makes tests more readable - custom toEquals matcher allows for pretty expectations
2012-01-03refactor: remove old JSTD assertionsVojta Jina
So that we can run the tests even without JSTD :-D
2011-11-14refactor(injector): $injector is no longer a function.Misko Hevery
- $injector('abc') -> $injector.get('abc'); - $injector(fn) -> $injector.invoke(null, fn);
2011-11-14style(docs): make jslint happy - fix some warningsVojta Jina
2011-11-14fix(doc) cleanup all api doc link warningsMisko Hevery
2011-11-14doc(AUTO, NG_MOCK): Documenting the AUTO and NG_MOCK moduleMisko Hevery
2011-11-14refactor(mock): moved mocks into its own moduleMisko Hevery
2011-11-14refactor(parser): turn parser into a service (keep compatibility hack)Misko Hevery
2011-11-14refactor(services): migrate angular.service -> moduleMisko Hevery
2011-11-14refactor(injector): switch to injector 2.0 introduce modulesMisko Hevery
2011-11-14new(injector): new injector v2.0Misko Hevery
- not connected to keep the CL small
2011-11-14refactor(api): cleaned up the externalization of angular API methodsMisko Hevery
2011-11-14refactor(compiler) turn compiler into a serviceMisko Hevery
BREAK - remove angular.compile() since the compile method is now a service and needs to be injected
2011-11-14refactor(injector): turn scope into a serviceMisko Hevery
- turn scope into a $rootScope service. - injector is now a starting point for creating angular application. - added inject() method which wraps jasmine its/beforeEach/afterEach, and which allows configuration and injection of services. - refactor tests to use inject() where possible BREAK: - removed angular.scope() method
2011-10-31feat(matchers): extract jasmine matchers into separate file for future reuseVojta Jina
Prefix all used functions with angular.* so that they can be used with compiled angular as well...
2011-10-11chore(formating): clean code to be function() {Misko Hevery
2011-10-11feat(forms): new and improved formsMisko Hevery
2011-09-27test(matchers): add toBeOneOf matcherIgor Minar
2011-09-16fix(specs): fix jQuery to jqLite binding on IE8Igor Minar
It appears that this whole time all IE8 unit tests ran only with jqLite. Due to a weird bug in IE[1], we never overwrote jqLite implementation with jQuery, so the tests ran with our jqLite instead. This affected only IE8 (and likely older) and only in unit testing mode. angular.js - the built artifact binds to jQuery just find. [1] https://plus.google.com/104744871076396904202/posts/Kqjuj6RSbbT
2011-08-18feat(test): toHaveBeenCalledOnce jasmine matcherVojta Jina
2011-08-02feat(scope): new and improved scope implementationMisko Hevery
- Speed improvements (about 4x on flush phase) - Memory improvements (uses no function closures) - Break $eval into $apply, $dispatch, $flush - Introduced $watch and $observe Breaks angular.equals() use === instead of == Breaks angular.scope() does not take parent as first argument Breaks scope.$watch() takes scope as first argument Breaks scope.$set(), scope.$get are removed Breaks scope.$config is removed Breaks $route.onChange callback has not "this" bounded
2011-07-18feat(strict mode): adding strict mode flag to all js filesIgor Minar
the flag must be in all src and test files so that we get the benefit of running in the strict mode even in jstd the following script was used to modify all files: for file in `find src test -name "*.js"`; do echo -e "'use strict';\n" > temp.txt cat $file >> temp.txt mv temp.txt $file done
2011-07-18fix(strict mode): fix all issues discovered by strict mode and unit/e2e testsIgor Minar
2011-07-17feat(jqlite): added show(),hide() and eq() methods to jqliteDi Peng
- add those three methods to jqlite
2011-06-27fix:testabilityPatch: remove annotate since it's not publicIgor Minar
2011-06-17Fix failing unit tests in IE7 (Binder, select widget)Vojta Jina
The fix does not change any production code, we only need to ignore couple of attributes that IE7 should not display: * value attribute for LI * selected attribut for SELECT Simplified condition in compiler test, this should have been part of f9f0905f4ad7b1d0bb9b606a6d25fb1f88354a78
2011-06-08Added ng:options directiveMisko Hevery
Closes #301
2011-06-08Refactor injector to have invoke method for speed reasonsMisko Hevery
2011-06-08better error reporting for exceptionsMisko Hevery
2011-06-02Fix unit test in IE7Vojta Jina
2011-04-09fix build for IE9Igor Minar
all unit tests now pass under IE9
2011-02-16rewrite of JQuery lite implementation, which now better supports selected setsMisko Hevery
2011-02-16remove $init on scope from applying compilation templateMisko Hevery
Closes #40
2011-02-16allow jquery to be declared after angular in the script loading orderMisko Hevery
2011-02-04smarter normalization of value on option, and htmlParser fixesMisko Hevery
2011-02-03corrected typo in the dump function which was preventig serialization of objectsMisko Hevery
2011-01-26split mocks and create $log and $exceptionHandler mocksIgor Minar
- split mocks between angular-mocks.js and mocks.js - src/angular-mocks.js now contains only mocks that we want to ship - test/mocks.js contains mocks that we use internally for testing angular - created angular.mock namespace - created public $exceptionHandler mock rethrows errors - created public $log mock stores all logs messages in an array that can be accessed to make assertions - internally we now have factory to create $exceptionHandler that we can assert on - internally we also keep track of all messages logged and fail tests if messages were not expected and cleaned up (checked via global beforeEach and afterEach) - updated RakeFile and docs reader.js to point to the new angular-mocks.js location - made real $exceptionHandler and $log factories accessible from tests and simplified their specs - fixed typos in several spec descriptions - added log assertions throughout the test suite
2011-01-18improved dump function to atomatically render HTMLMisko Hevery
2011-01-10Rename angular.foreach to angular.forEach to make the api consistent.Igor Minar
camelcase is used for other angular functions and forEach is also used by EcmaScript standard. - rename the internal as well as the external function name - tweak the implementation of the function so that it doesn't clober it self when we extend the angular object with an object that has a forEach property equal to this forEach function Closes #85
2011-01-07change to keydown from keyup; add delayed $updateViewMisko Hevery
- There was a perceived lag when typing do to the fact that we were listening on the keyup event instead of keydown. The issue with keydown is that we can not read the value of the input field. To solve this we schedule a defer call and perform the model update then. - To prevent calling $eval on root scope too many times as well as to prevent drowning the browser with too many updates we now call the $eval only after 25ms and any additional requests get ignored. The new update service is called $updateView