aboutsummaryrefslogtreecommitdiffstats
path: root/test/ng
AgeCommit message (Collapse)Author
2013-02-20fix($compile): sanitize values bound to a[href]Igor Minar
2013-02-18fix(ngClass): keep track of old ngClass value manuallyPer Rovegård
ngClassWatchAction, when called as a $watch function, gets the wrong old value after it has been invoked previously due to observation of the interpolated class attribute. As a result it doesn't remove classes properly. Keeping track of the old value manually seems to fix this. Closes #1637
2013-02-18fix(compile): should not leak memory when there are top level empty text nodesPete Bacon Darwin
The change to prevent <span> elements being wrapped around empty text nodes caused these empty text nodes to have scopes and controllers attached, through jqLite.data() calls, which led to memory leaks and errors in IE8. Now we exclude all but document nodes and elements from having jqLite.data() set both in the compiler and in ng-view. Fixes: #1968 and #1876
2013-02-14fix($httpBackend): patch for Firefox bug w/ CORS and response headersWill Moore
A workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=608735 In FF getAllResponseHeaders() returns null if the request is the result of CORS. Tried to format the code so that when a FF patch is released and gains enough traction it can easily be selected and deleted. Heavily inspired by jQuery's patch for the same bug. This patch falls short of passing through custom headers but covers all of the "simple response headers" in the spec at http://www.w3.org/TR/cors/ This commit should get reverted once Firefox 21 gets out. Closes #1468 Conflicts: src/ng/httpBackend.js
2013-02-14fix(a): workaround IE bug affecting mailto urlsIgor Minar
Apparently there is a really weird bug in IE6-8 that causes anchor textContent to be reset with href content when both contain @ symbol. Inserting a bogus comment node into all anchor elements in IE works around this browser bug. I'm fixing the issue via directive because that way we'll fix it for jQuery as well. I fixed an e2e test too because it was incorrect. Closes #1949
2013-02-14fix($rootScope): minor typo fixesDaniel Luz
2013-02-14fix(numberFilter): fix formatting when "0" passed as fractionSizeKury Kruitbosch
When checking to add decimal and trialing 0s number filter used to check trueness of fractionSize. "0" evaluating to true causes "123" to return "123."
2013-02-07fix($compile): rename $compileNote to compileNodeEnrique Paredes
Directives was observing different instances of Attributes than the one that interpolation was registered with because we failed to realize that the compile node and link node were the same (one of them was a wrapper rather than raw node) Closes #1941
2013-02-07fix($cookies): set cookies on Safari&IE when base[href] is undefinedFredrik Bonander
Safari and IE don't like being told to store cookies with path set to undefined. This change ensures that if base[href] (from which cookie path is derived) is undefined then the cookie path defaults to ''. The test verifies that the cookie is set instead of checking that cookie has correct path, this is due to that cookie meta information is not avabile once the cookie is set. Closes #1190, #1191
2013-02-07fix(date): invert timezone sign and always display signPhilip Roberts
This commit fixes #1261 and #1532. This covers two separate issues: - Positive timezones were being formatted without a leading `+` resulting in a formatting string like: "HH:MM:ssZ" giving "12:13:141000" instead of "12:13:14+1000". Fixed by checking if timezone is > 0 and adding a leading "+". - Timezone output signs were inverted. mock.TzDate expects the timezone _offset_ as it's first argument, _not_ the timezone. This means that a mock.TzDate with a positive offset should result in a date string with a negative timezone, and vice-versa. Closes #1261, #1532
2013-01-30feat(Scope): expose transcluded and isolate scope info for batarangBrian Ford
test($compile): add test for exposing transclude and isolate scope info to batarang
2013-01-18fix(ngSwitch): don't leak when destroyed while not attacheddanilsomsikov
The leak can occur when ngSwich is used inside ngRepeat or any other directive which is destroyed while its transcluded content (which includes ngSwitch) is not attached to the DOM. Refactor ngSwitch to use controller instead of storing data on compile node. This means that we don't need to clean up the jq data cache. Controller reference is released when the linking fn is released. Closes #1621
2013-01-17feat($compile): support modifying the DOM structure in postlink fnMartin Probst
Support modifying the DOM structure in the post link function of a directive by creating a defensive copy of the node list, as opposed to a live DOM list. This is useful for directives to actually replace their entire DOM fragment, e.g. with the HTML fragment generated by a 3rd party component (Closure, Bootstrap ...). Fix the indentation of the compileNodes function (was one too little).
2013-01-17fix($compile): do not wrap empty root text nodes in spansPete Bacon Darwin
Closes #1059
2013-01-17fix(ngRepeat): correctly apply $last if repeating over objectPete Bacon Darwin
If the $last property is calculated from the original collectionLength on an object and properties starting with $ were filtered out, then $last is never applied and $middle is applied erroniously. Closes #1789
2013-01-16fix($route): support route params not separated with slashes.Martin Probst
Commit 773ac4a broke support for route parameters that are not seperated from other route parts by slashes, which this change fixes. It also adds some documentation about path parameters to the when() method and escapes all regular expression special characters in the URL, not just some.
2013-01-14fix($compile): safely create transclude comment nodesIgor Minar
Closes #1740
2013-01-08refactor($browser): remove faulty 20+ cookies warningIgor Minar
the warning is defunct (and the test is incorrect) so obviously nobody is using it and it just takes up space. also the browser behavior varies (ff and chrome allow up to 150 cookies, safari even more), so it's not very useful. Closes #1712
2012-12-14fix($route): correctly extract $routeParams from urlsGonzalo Ruiz de Villa
Routes like '/bar/foovalue/barvalue' matching '/bar/:foo/:bar' now are well mapped in $routeParams to: {bar:'barvalue', foo:'foovalue'} Closes: #1501 Signed-off-by: Gonzalo Ruiz de Villa <gonzaloruizdevilla@gmail.com>
2012-12-05fix(select): support optgroup + select[multiple] combo_pants
Closes #1553
2012-11-30fix(Scope): ensure that a scope is destroyed only onceIgor Minar
Due to bd524fc4 calling $destroy() on a scope mupltiple times cases NPE. Closes #1627
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.