aboutsummaryrefslogtreecommitdiffstats
path: root/test/ng
AgeCommit message (Collapse)Author
2012-11-26fix($location): reset $location.$$replace with every watch callRado Kirov
Closes #1111
2012-11-26fix(ngRepeat): support mostly-stable repeating for primitivesIgor Minar
I'm reverting changes that were originally done to ngRepeat to fix #933, because these are now not necessary after the previous changes to keep ngModel always synced with the DOM.
2012-11-26test(ngRepeat): clean up and improve testsIgor Minar
2012-11-26test(ngRepeat): add test for issue #1076Igor Minar
2012-11-25fix(Scope): allow removing a listener during eventVojta Jina
2012-11-24fix($cacheFactory): return undefined when removing non-existent entryJeremy Tymes
Instead of throwning an exception, remove should return undefined when cache entry to be removed doesn't exist. Closes #1497
2012-10-31fix(select): select option with a label of 0 is not shownSudhir Jonathan
Bug caused by the use of the `||` operator to replace all non-truthy values with an empty string. Changed to replace only `undefined` values. Closes #1401
2012-10-29fix($compile): prevent double attr interpolation w/ templateUrlIgor Minar
This fixes the issue that caused two attr interpolation observers to be registered for the same attribute as a result of isolate scope definition with attr (@) property for this attribute. Duplicate observers would then fight with each other updating the model. The issue occured only when this directive was used in a repeater because that's when we clone the template node which caused the two observers to point to two different sets of $attr instances. Closes #1166, #836
2012-10-29fix(currency): Handle not-quite-zero valuesBraden Shepherdson
IEEE 754 floating point sometimes results in values that are very small, rather than zero. One example is 1.0 + 1.07 - 2.07, which returns 4.440892098500626e-16 instead of 0. This change tweaks the number formatting logic so that an exponential value with a negative exponent that is larger than the precision+1 returns 0 instead. For example: with precision 2, anything with an exponent of -4, -5 or more would become 0. 9e-3 = 0.009 = 0.01, but 9e-4 = 0.0009 = 0.001 = 0.00. This detail is unlikely to matter since this quirk is usually only triggered with values very close to zero. Closes #1469
2012-09-22fix($compile): reference local in isolate scopeVojta Jina
This was really corner case: Watcher needs to return changed value, to notify that model might have changed and one more $digest cycle needs to be performed. The watcher, that takes care of reference binding into an isolate scope ("="), did not return changed value, if the change was from the isolate scope to the parent. If any other watcher returned change, it worked fine, as this change caused re-digest. Closes #1272
2012-09-11fix($route): support inline annotation on .resolveMisko Hevery
2012-09-11fix(ng-repeat) to work with primitive typesZhenbo Zhang
2012-09-06fix(FormController): propagate dirty state to parent formsKai Groner
2012-09-06fix(ngSrc): don't set src if value is empty stringXiangru Chen
Current implementation of ngSrc may lead to empty src attribute when page is loading. For example: <img ng-src="{{image.url}}"> can be temporarily rendered as <img src=""> before the image resource is loaded. Some browser emits a request to the current page when seeing <img src=""> (Firefox13 and IE8 will, Chromium20 won't), which leads to performance problems.
2012-09-06fix(dateFilter): make timezone optionalIwein Fuld
Makes the time zone optional in the date filter Problem with the current R_ISO8601_STR regex was that the time was optional, but the zone was not. This results in the filter not formatting local date times, which it could easily do. For example: 2012-08-30 -> formatted 2012-08-30T06:06:06.123Z -> formatted 2012-08-30T06:06:06.123 -> NOT formatted A simple change in the regex fixes this. Arguably this is closer to the ISO8601 spec which specifies local dates being in the "current time zone" and not requiring a Z. In any case it behaves more like a user would expect.
2012-09-06fix(ngClassEven/Odd): filtering/ordering and repeaterpetrovalex
Closes #1076
2012-09-06fix(ngClass): works with class interpolationMax Martinsson
Closes #1016
2012-09-06fix($parser): string concatination with undefined modelpetrovalex
Closes #988
2012-09-06fix(dateFilter): support sub-second precision on dateFilterStein Jakob Nordbø
2012-08-31revert: fix(ng-repeat) to work with primitive typesIgor Minar
this commit was accidentaly merged. it needs more work and we don't have CLA signature This reverts commit 98d489712eff7559bce87ae53bd242112a875c1a.
2012-08-30fix(ng-repeat) to work with primitive typesZhenbo Zhang
2012-08-30test(locationSpec): fix broken tests after vojta's commitIgor Minar
2012-08-27fix(docs) typoMisko Hevery
2012-08-13fix($compile): denormalize directive templatesIgor Minar
Since developers are allowed to customize start/end interpolation strings, but third-party directive creators don't know about these customizations, we should standardize on {{ }} in templates of reusable (third-party) directives. During the compilation, these templates are then denormalized to use whatever the custom start/end symbol is, effectively translating the template into the syntax of the runtime environment. This addresses an issue raised at http://goo.gl/e8VPV Existing code should not be affected by this change since project that do use custom interpolation markers are not expected to use {{ }} in existing directive templates.
2012-08-13refactor($compile): code cleanupIgor Minar
2012-08-13fix(ngPluralize): fixes ng-pluralize when using non-standard start/end symbolsBrian Ford
Closes #1134
2012-08-13style(ngPluralizeSpec): fix indentationIgor Minar
2012-08-13feat($interpolate): expose start/end symbols in run phaseIgor Minar
previously the startSymbol() and endSymbol() getters were exposed only via provider in the config phase
2012-08-13fix($interpolate): $interpolateProvider.endSymbol() returns startSymbolIgor Minar
I also added missing tests.
2012-08-10fix(option): support option elements in datalistIgor Minar
previously we expected to find option elements only within select element and if that was not the case we throw an error. This made it impossible to include datalist element with nested option elements in the template. Closes #1165
2012-08-10fix(form): prevent page reload when form destroyedIgor Minar
this fix ensures that we prevent the default action on form submission (full page reload) even in cases when the form is being destroyed as a result of the submit event handler (e.g. when route change is triggered). The fix is more complicated than I'd like it to be mainly because we need to ensure that we don't create circular references between js closures and dom elements via DOM event handlers that would then result in a memory leak. Also the differences between IE8, IE9 and normal browsers make testing this ugly. Closes #1238
2012-08-10test(form): fix broken preventDefault testIgor Minar
the original test relied on incorrect assumptions about how jasmine async tests work (when setTimeout is triggered) and how browser reloads a page (the sequence of events) and thus the test passes even when the default is not prevented. this change fixes the test by registering an extra submit event handler that checks if the default was prevented. if the default was not prevented, the test will fail and the page will be reloaded causing the test runner to panic.
2012-08-10refactor(formSpec): group preventDefault specs into a describeIgor Minar
2012-06-22fix(browser): prevent ie from getting into redirect loopMisko Hevery
Closes #1075 Closes #1079 Closes #1085
2012-06-20fix($location): url rewriting if element was removedVojta Jina
When user clicks a link, $location needs to intercept this event. The <a> doesn't have to be target element of the DOM event, so it needs to traverse the DOM, to find first <a> parent. If the target element was removed from DOM, during the same event, it would throw an exception. This fixes the issue. Closes #1058
2012-06-14fix($location): fix URL interception in hash-bang modeMisko Hevery
Closes #1051
2012-06-13fix($location): correctly parse link urls in hashbang mode with prefixMisko Hevery
This is a second fix for a regression that was introduced by 92a2e180. The fix addresses scenarios when the $location service is configured with a hash prefix. Closes #1037
2012-06-12fix($defer): remove deprecated $defer serviceIgor Minar
2012-06-12fix($location): correctly parse link urls in hashbang modeMisko Hevery
This is a fix for a regression that was introduced by 92a2e180 Closes #1037
2012-06-10test($location): fix tests borked during event renamingIgor Minar
2012-06-08fix($compile): correctly merge class attr for replace directivesMax Martinsson
Merging of interpolated class attribute from directive template with replace:true works Closes #1006
2012-06-08fix($http): add utf-8 to default Content-Type header (post/put)Vojta Jina
This fixes special characters issue with MongoLab. https://groups.google.com/d/topic/angular/1T6h7bfZ7Rs/discussion
2012-06-08feat($compile): simplify isolate scope bindingsMisko Hevery
Changed the isolate scope binding options to: - @attr - attribute binding (including interpolation) - =model - by-directional model binding - &expr - expression execution binding This change simplifies the terminology as well as number of choices available to the developer. It also supports local name aliasing from the parent. BREAKING CHANGE: isolate scope bindings definition has changed and the inject option for the directive controller injection was removed. To migrate the code follow the example below: Before: scope: { myAttr: 'attribute', myBind: 'bind', myExpression: 'expression', myEval: 'evaluate', myAccessor: 'accessor' } After: scope: { myAttr: '@', myBind: '@', myExpression: '&', // myEval - usually not useful, but in cases where the expression is assignable, you can use '=' myAccessor: '=' // in directive's template change myAccessor() to myAccessor } The removed `inject` wasn't generaly useful for directives so there should be no code using it.
2012-06-08fix(startingTag): make tag name always lowercaseIgor Minar
some browsers (IE) always provide the nodeName as upper-case
2012-06-08refactor($compile): always call attr.$observeMisko Hevery
attr.$observe used to call function only if there was interpolation on that attribute. We now call the observation function all the time but we only save the reference to it if interpolation is present.
2012-06-08chore($compile): clean up compiler testsMisko Hevery
2012-06-04fix($timeout): allow calling $timeout.cancel() with undefinedAli Mills
This is how it worked in rc9, before refactoring $defer into $timeout.
2012-06-02doc(NgModelController) add example and $render documentationMisko Hevery
Closes#930
2012-06-02feat($location): add $locatonChange[begin|completed] eventMisko Hevery
This allows location change cancelation
2012-06-02chore($location) switch to use $rootElementMisko Hevery