aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)Author
2010-10-23Fix test which was causing the Chrome runner to fail. Upgraded JSTD to ↵Misko Hevery
latest. Cleanup whitespace.
2010-10-22Workaround for http://bugs.jquery.com/ticket/7292Misko Hevery
2010-10-20fixed more ie test failuresMisko Hevery
2010-10-20fix some of the failing ie testsMisko Hevery
2010-10-20Angular should look for angular-ie-compat file at the right locationIgor Minar
The location should be based on the base path of the angular script and the version identifier of the angular script. ex: angular.js -> angular-ie-compat.js js/angular-0.9.0.min.js -> js/angular-ie-compat-0.9.0.js
2010-10-20add missing spec for angularJsConfigIgor Minar
2010-10-20extract and test regexp that identifies angular script tagIgor Minar
2010-10-20Lots of stability and performance updates and UI polish too.Elliott Sprehn
Polish the Scenario Runner UI to include: - a scroll pane that steps appear in since the list can be very long - Collapse successful tests - Show the line where the DSL statements were when there's an error (Chrome, Firefox) Also: - Remove lots angular.bind calls to reduce the amount of stack space used. - Use setTimeout(...,0) to schedule the next future to let the browser breathe and have it repaint the steps. Also prevents overflowing the stack when an it() creates many futures. - Run afterEach() handlers even if the it() block fails. - Make navigateTo() take a function as the second argument so you can compute a URL in the future. - Add wait() DSL statement to allow interactive debugging of tests. - Allow custom jQuery selectors with element(...).query(fn) DSL statement. Known Issues: - All afterEach() handlers run even if a beforeEach() handler fails. Only after handlers for the same level as the failure and above should run.
2010-10-20fixed negative numbers in JsonMisko Hevery
2010-10-19Added tests for URL_MATCH and fixed issue with empty pathVojta Jina
This commit was produced by a combination of 4 commits: - Added URL_MATCH test for basic url - Moved two tests from $location to URL_MATCH, as they should be here - Added test for host without "/" ending and fix the regexp to pass the test - Added another test for matching empty abs path ("/") and fix the regexp
2010-10-19fix date filter to igrone falsy inputMisko Hevery
2010-10-19fixed testsMisko Hevery
2010-10-19Fix browser triggering in scenario to always do native events.Misko Hevery
- Also fixed angular.suffix for scenarios - refactored click() to browserTrigger() - Fixed Rakefile with CSS and jQuery
2010-10-19Significantly clean up the way the scenario DSL works and implement many ↵Elliott Sprehn
more DSL statements. - "this" always means the current chain scope inside a DSL - addFutureAction callbacks now take ($window, $document, done) - $document has a special method elements() that uses the currently selected nodes in the document as defined by using() statements. - $document.elements() allows placeholder insertion into selectors to make them more readable. ex. $document.elements('input[name="$1"]', myVar) will substitute the value of myVar for $1 in the selector. Subsequent arguments are $2 and so on. - $document.elements() results have a special method trigger(event) which should be used to events. This method implements some hacks to make sure browser UI controls update and the correct angular events fire. - futures now allow custom formatting. By default any chain that results in a future can use toJson() or fromJson() to convert the future value to and from json. A custom parser can be provided with parsedWith(fn) where fn is a callback(value) that must return the parsed result. Note: The entire widgets.html UI is now able to be controlled and asserted through DSL statements!!! Victory! :)
2010-10-18fixing css class name for currency filter and its specIgor Minar
2010-10-18Removed $location.cancel() method (and related test)Vojta Jina
2010-10-18Update $location API Close #62Vojta Jina
update(objOrString) updateHash(objOrString [, objOrString]) toString() cancel() Examples: $location.update('http://www.angularjs.org/path#path?a=b'); $location.update({port: 443, protocol: 'https'}); $location.updateHash('hashPath'); $location.updateHash({a: 'b'}); $location.updateHash('hashPath', {a: 'b'}); This commit was produced by squash of more commits, here are the old messages: - Change tests to use update() instead of parse(). - First implementation of update() method - Test for update() with object parameter - Add new tests for location, refactor location code - Add tests for updateHash() - Implement updateHash() - Take one or two arguments, could be string - update hashPath, or hash object - update hashSearch... - Fixed other service tests, to use new $location.update() Added $location.cancel() method (with test) Added $location.parse() for back compatability Remove parse() method
2010-10-18JSON parser is now strict (ie, expressions are not allowed for security)Misko Hevery
Close #57
2010-10-16improving angular.copy specIgor Minar
2010-10-16Add test for toKeyValue() - true values should be composed to flagVojta Jina
2010-10-16Add missing tests for toKeyValue() functionVojta Jina
2010-10-16attempting to fix ie on jquery build failureMisko Hevery
2010-10-16fixed date formater and make it work on ieMisko Hevery
2010-10-16adding an extra DateToUTC assertionIgor Minar
2010-10-16Fixed filter date test - remove dependency on machine timezoneVojta Jina
It would be better to separate the time-zone logic to a separate unit and test just this logic. This logic is simply convert minutes to HH:MM, the source of time-zone is from date object...
2010-10-15Fix unicode parsing Close #56Misko Hevery
2010-10-15fixed lint warnings and one flaky testMisko Hevery
2010-10-15Updated JSTDMisko Hevery
2010-10-14New Angular Scenario runner and DSL system with redesigned HTML UI.Elliott Sprehn
Uses the Jasmine syntax for tests, ex: describe('widgets', function() { it('should verify that basic widgets work', function(){ navigateTo('widgets.html'); input('text.basic').enter('Carlos'); expect(binding('text.basic')).toEqual('Carlos'); input('text.basic').enter('Carlos Santana'); expect(binding('text.basic')).not().toEqual('Carlos Boozer'); input('text.password').enter('secret'); expect(binding('text.password')).toEqual('secret'); expect(binding('text.hidden')).toEqual('hiddenValue'); expect(binding('gender')).toEqual('male'); input('gender').select('female'); expect(binding('gender')).toEqual('female'); }); }); Note: To create new UI's implement the interface shown in angular.scenario.ui.Html.
2010-10-13Added support for date filterMisko Hevery
Date filter now supports: yyyy: four digit year yy: two digit year MM: two digit month dd: two digit day of month HH: two digit hour in 0-23 KK: two digit hour in 0-12 mm: two digit minute ss: two digit second a: am/pm Z: four digit timezone offset example {{ timestamp | date:'yyyy-MM-dd HH:mm:ss' }} becomes 2010-10-13 14:45:23
2010-10-13fixing reference issue in angular-mocks.jsIgor Minar
2010-10-13fixed issue where date copy creates an object instead of dateMisko Hevery
2010-10-13fixed issue where ng:bind would not reset value if expression returned undefinedMisko Hevery
2010-10-12Fixed issue where compiler would pass in detached text node if previous ↵Misko Hevery
markup would have removed it.
2010-10-12Introduced injector and $new to scope, and injection into link methods and ↵Misko Hevery
controllers - added angular.injector(scope, services, instanceCache) which returns inject - inject method can return, instance, or call function which have $inject property - initialize services with $creation=[eager|eager-publish] this means that only some of the services are now globally accessible - upgraded $become on scope to use injector hence respect the $inject property for injection - $become should not be run multiple times and will most likely be removed in future version - added $new on scope to create a child scope - $inject is respected on constructor function - simplified scopes so that they no longer have separate __proto__ for parent, api, behavior and instance this should speed up execution since scope will now create one __proto__ chain per scope (not three). BACKWARD COMPATIBILITY WARNING: - services now need to have $inject instead of inject property for proper injection this breaks backward compatibility - not all services are now published into root scope (only: $location, $cookie, $window) - if you have widget/directive which uses services on scope (such as this.$xhr), you will now have to inject that service in (as it is not published on the root scope anymore)
2010-10-13fix memory leak caused by leftbehind $invalidWidgets referencesIgor Minar
- ng:switch should not clean up $invalidWidgets - $invalidWidgets should be clean up after each eval - add missing docs
2010-10-08Fix bug with Lexer not recognizing exponential values and values starting ↵Shyam Seshadri
with dots
2010-10-08change ng:controller to create new scope hence allow nestingMisko Hevery
2010-10-07Change angular-mocks to throw errors on unexpected gets in the format JSTD ↵Shyam Seshadri
now expects
2010-10-06removing anchor spec and improving jqLite.trigger() methodIgor Minar
- removing the last anchor spec because it can't run reliably in all browsers - improving jqLite.trigger() method
2010-10-04fixed lint warningsIgor Minar
2010-10-04adding missing spec for 'A' widgetIgor Minar
2010-10-01angular-mocks code should access all global functions via angularIgor Minar
mocks must use angular.foo because the final build will hide all the normally accessible functions within an anonymous closure.
2010-10-01'A' tag widget and ng:click propagation changeIgor Minar
* added a widget for A (anchor) tag, that modifies the default behavior and prevent default action (location change and page reload) for tags with empty href attribute * stopped event propagation for all ng:click handlers
2010-09-29Differentiate between flags and empty keys in $location.hashSearchIgor Minar
* #foo?key=var&flag&emptyKey= should parse into {key:'val', flag: true, emptyKey: ''} * added docs and spec for parseKeyValue function
2010-09-27Reworked the cookie synchronization between cookie service, $browser and ↵Igor Minar
document.cookie. Now we finally correctly handle situations when browser refuses to set a cookie, due to storage quota or other (file:// protocol) limitations.
2010-09-26Properly initialize cookie service in order to preserve existing cookiesIgor Minar
- previously the poller initialized the cookie cache too late which was causing previously existing cookies to be deleted by cookie service - refactored the poller api so that the addPollFn returns the added fn - fixed older cookie service tests - removed "this.$onEval(PRIORITY_LAST, update);" because it is not needed
2010-09-26Added support for functions to $orderBy methodMisko Hevery
http://github.com/angular/angular.js/issues#issue/23
2010-09-23make date validator use the Date objectBolek Szewczyk
2010-09-23$cookies service refactoringIgor Minar
- remove obsolete code in tests - add warning logs when maximum cookie limits (as specified via RFC 2965) were reached - non-string values will now get dropped - after each update $cookies hash will reflect the actual state of browser cookies this means that if browser drops some cookies due to cookie overflow, $cookies will reflect that - $sessionStore got renamed to $cookieStore to avoid name conflicts with html5's sessionStore