aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)Author
2013-06-28chore: remove jstd leftoversVojta Jina
2013-06-20fix(Angular.js): don't crash on invalid query parametersPete Bacon Darwin
2013-06-19fix($http): ensure case-insens. header overridingCaio Cunha
If user send content-type header, both content-type and default Content-Type headers were sent. Now default header overriding is case-insensitive.
2013-05-23fix(jqLite): correctly monkey-patch core jQuery methodsMichał Gołębiowski
When real jQuery is present, Angular monkey patch it to fire `$destroy` event. This commit fixes two issues in the jQuery patch: - passing a selector to the $.fn.remove method (only fire `$destroy` on the matched elements) - using `$.fn.html` without parameters as a getter (do not fire `$destroy`)
2013-05-21test(parse): Test for the parsing not invoking twice to get selfLucas Galfasó
New tests to not call twice a function to get self
2013-05-11fix($browser): should use first value for a cookie.Chirayu Krishnappa
With this change, $browser.cookies()["foo"] will behave like docCookies.getItem("foo") where docCookies is defined at https://developer.mozilla.org/en-US/docs/DOM/document.cookie This fixes the issue where, if there's a value for the XSRF-TOKEN cookie value with the path /, then that value is used for all applications in the domain even if they set path specific values for XSRF-TOKEN. Closes #2635
2013-05-10fix(ngPluralize): handle the empty string as a valid overrideLucas Galfasó
Fix the check for overrides so it is able to handle the empty string Closes #2575
2013-05-09test(sortedHtml): ignore bogus rowspan=1 and colspan=1 in IEIgor Minar
2013-05-09test(sortedHtml): fix comment support in sortedHtml helperIgor Minar
2013-05-08fix(angular): do not copy $$hashKey in copy/extend functions.R. Merkert
Copying the $$hashKey as part of copy/extend operations makes little sense since hashkey is used primarily as an object id, especially in the context of the ngRepeat directive. This change maintains the existing $$hashKey of an object that is being copied into (likewise for extend). It is not uncommon to take an item in a collection, copy it, and then append it to the collection. By copying the $$hashKey, this leads to duplicate object errors with the current ngRepeat. Closes #1875
2013-05-08feat($cookieStore): $cookieStore.get now parses blank string as blank stringIllniyar
closes #1918
2013-05-07fix(select): ensure empty option is not lost in IE9Chad Smith
Fix a check inside render for select elements with ngOptions, which compares the selected property of an element with it's desired state. Ensure the placeholder, if available, is explicitly selected if the model value can not be found in the option list. Without these fixes it's up to the browser implementation to decide which option to choose. In most browsers, this has the effect of displaying the first item in the list. In IE9 however, this causes the select to display nothing. Closes #2150, #1826
2013-05-01fix($location): back-button should fire $locationChangeStartquazzie
Before $locationChangeStart event is not broadcast when pressing the back-button on the browser. Closes #2109
2013-04-29fix(jqLite): correct implementation of mouseenter/mouseleave eventgockxml
Implement mouseenter/mouseleave event referring to http://www.quirksmode.org/js/events_mouse.html#link8 and jQuery source code(not dependent on jQuery). The old implementation is wrong. When moving mouse from a parent element into a child element, it would trigger mouseleave event, which should not. And the old test about mouseenter/mouseleave is wrong too. It just triggers mouseover and mouseout events, cannot describe the process of mouse moving from one element to another element, which is important for mouseenter/mouseleave. Closes #2131, #1811
2013-04-29test(browser/compile): fix calls to Jasmine fail()Oren Avissar
The fail() function in Jasmine expects an Error object parameter. Also, there is no global alias for fail() so it must be accessed using `this.fail(new Error())`.
2013-04-17fix(ngModel): use paste/cut events in IE to support context menuMark Dalgleish
In IE the model is not updated when the input value is modified using the context menu, e.g. pasting from the clipboard, or cutting all or part of the current value. To capture these changes, we bind to the proprietary 'paste' and 'cut' events. Closes #1462
2013-04-16fix(ngClass): should remove classes when object is the same but property has ↵Pete Bacon Darwin
changed If you wire up ngClass directly to an object on the scope, e.g. ng-class="myClasses", where scope.myClasses = { 'classA': true, 'classB': false }, there was a bug that changing scope.myClasses.classA = false, was not being picked up and classA was not being removed from the element's CSS classes. This fix uses angular.equals for the comparison and ensures that oldVal is a copy of (rather than a reference to) the newVal.
2013-03-15fix($location): parse FirefoxOS packaged app urlsManuel Braun
FirefoxOS uses special URLs like app://{d0419af1-8b42-41c5-96f4-ef4179e52315}/index.html for packaged Apps. Closes #2112
2013-03-14fix(timezone): correct timezone date filter for 1/2 hour offsetsSujeet Pillai
2013-03-14Fix failing test in IE 10Shyam Seshadri
2013-03-11fix($location): correctly rewrite html5 url to hashbang urlThibault Leruitte
In situations where path() matched basepath and we needed to convert from html5 url to hashbang url, the $location service considered the url to be already rewritten, which resulted in an error.
2013-03-08test($route): add tests for matching 'otherwise' routesIgor Minar
2013-03-06feat(angular.bootstrap): support deferred bootstrapJulie
This features enables tools like Batarang and test runners to hook into angular's bootstrap process and sneak in more modules into the DI registry which can replace or augment DI services for the purpose of instrumentation or mocking out heavy dependencies. If window.name contains prefix NG_DEFER_BOOTSTRAP! when angular.bootstrap is called, the bootstrap process will be paused until angular.resumeBootstrap is called. angular.resumeBootstrap takes an optional array of modules that should be added to the original list of modules that the app was about to be bootstrapped with. Conflicts: src/Angular.js
2013-02-26fix($http): don't encode URL query substring "null" to "+"Andrew McLeod
Fixes issue in encodeUriQuery used by $http and $resource that treats null as a string and replaces the characters "null" with "+".
2013-02-25fix($compile): compile replace directives in external templatedanilsomsikov
Passing DOMNode#childNodes to compileNodes when compiling remote template, so that directives with replace:true can be compiled. The previous version used jqLite#contents which returned collection that was not updated during the compilation. Closes #1859
2013-02-25chore(sortedHtml): print attributes with empty valueIgor Minar
I had to also fix some tests as they started failing on IE8. We should figure out why these extra attributes are set in IE8, but I'm too tired of IE to worry about it now. Since I'm not introducing this issue just making it visible, I'm going to commit this as is.
2013-02-25fix($compile): whitelist file:// in url sanitizationIgor Minar
2013-02-23fix($compile): handle elements with no childNodes propertyIgor Minar
see the test for more details
2013-02-20chore(matchers): fix hasBeenCalledOnceWith matcherIgor Minar
the error message was wrong and misleading
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(compiler): Allow startingTag method to handle text / comment nodesShyam Seshadri
2013-02-14fix(resource): Update RegExp to allow urlParams with out leading slashFredrik Bonander
Will allow reoucese to be loaded from a relative path Example: var R = $resource(':path'); R.get({ path : 'data.json' }); Example usage: Load resources in applications not using webserver, ie local webapp in on a tablet.
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-11test(angular.copy): add tests for scenarios when target is missingIgor Minar
2013-02-11fix(angular.forEach): correctly iterate over objects with length propIgor Minar
Should handle JQLite, jQuery, NodeList and other objects like arrays but not other generic objects or instances of user defined types with length property. Closes #1840
2013-02-07fix(scenario): include error messages in XML outputJulie
Fix the XML output of scenario tests so that it properly includes error messages from failing specs.
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-29test(ngBindHtml): prevent variable name leakmetaweta
Add "var" so element is local instead of global Strict mode doesn't allow undeclared global vars, and these really should be local anyway.
2013-01-22fix(ngResource): correct leading slash removal.pavelgj
Fixed an issues with ngResource param substitution where it was incorrectly removing leading slash when param was followed by a non-slash character. Ex: '/:foo/:bar.baz/:aux' params = { foo: 'aaa', bar: undefined, aux: undefined } The above params were incorrectly producing '/aaa.baz' but now it results in '/aaa/.baz'.
2013-01-22fix(angular.equals): relax the comparison for undefined propertiesIgor Minar
in 5ae63fd3 the comparison was made consistent but strict, so that angular.equals({}, {foo: undefined}) // always returns false this turns out to cause issues for data that is being roundtripped via network and serialized via JSON because JSON.stringify serializes {foo: undefined} as {}. Since angular.equals() behaved like this before the 5ae63fd3 in 50% of the cases, changing the behavior in this way should not introduce any significant issues. Closes #1648
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-17fix(angular.equals): consistently compare undefined object propsIgor Minar
previously: a = {}; b = {x:undefined}; angular.equals(a, b) == angular.equals(b, a) // returns false. both should return false because these objects are not equal. unlike in implemented in #1695 the comparison should be stricter and return false not true. if we need to relax this in the future we can always do so. Closes #1648