aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
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-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 issue where script calls back before callback registered.Misko Hevery
2010-10-19fix date filter to igrone falsy inputMisko Hevery
2010-10-19fixed Scenario.js so that it does not clobber global varsMisko 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-18small fixes to the $location servicesIgor Minar
* fixing the jsdoc format * rewriting updateHash() method to be easier to read and so that it minifies better
2010-10-18fixing css class name for currency filter and its specIgor Minar
2010-10-18inline all images into cssIgor Minar
* embedded images as data URIs * rake task to generate multipart js file with embeded images for IE * move images into a separate directory outside of src or css and keep them there for reference * clean up Rakefile and ruby code * .gitignore update * don't penalize IE 8+ with an extra request to the ie-compat.js file
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-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-16ng:include should remove the reference to childScope when src is blankIgor Minar
2010-10-16Pass the toKeyValue() test - parsing flagsVojta Jina
2010-10-16fixed date formater and make it work on ieMisko Hevery
2010-10-15Fix unicode parsing Close #56Misko Hevery
2010-10-15fixed lint warnings and one flaky testMisko Hevery
2010-10-15removed unneeded function rethrow from scope which was interfering with the ↵Misko Hevery
test rethrow function
2010-10-14use new Function instead of eval()Misko Hevery
Close #52
2010-10-14publish $route since we bind it with $route.current in ng:includeMisko Hevery
2010-10-14removed stray console.logMisko Hevery
2010-10-14temporary backwards compatibility patch forIgor Minar
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-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-12fixing missing semicolonIgor Minar
2010-10-13fix global namespace polution with invalidWidgetsIgor Minar
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-13temparary backaward compatibility patch for Controller.initIgor Minar
- feedback relies on *Controller.init to be called when a Controller is being created. this with previous angular refactoring this is not happening in angular any more. To make it easier for feedback to transition, this change makes $become call controller's init method if present. - call to Controller.init from $route.updateRoute was removed. this was left there by accident during the previous refactoring.
2010-10-08Fix bug with Lexer not recognizing exponential values and values starting ↵Shyam Seshadri
with dots
2010-10-08fixed leaking constants to gloabal scopeMisko Hevery
2010-10-08change ng:controller to create new scope hence allow nestingMisko Hevery
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-05Fix bug in IE where clone removes whitespace nodes.Elliott Sprehn
2010-10-04fixed lint warningsIgor Minar
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-10-01properly handle event's stopPropagation() and preventDefault() method in IEIgor Minar
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