Commit Graph

278 Commits

Author SHA1 Message Date
jaubourg
01c360f963 Ajax: Protect against exceptions thrown synchronously by xhr.send
When xhr.send throws an exception synchronously, the onerror handler may have
been called already which, unchecked, makes the exception bubble up outside of
jQuery.ajax.

We now catch the exception pre-emptively and only rethrow if we know it hasn't
already been notified through the onerror handler.

Fixes #14683
2014-01-29 14:18:58 +01:00
Michał Gołębiowski
fd0bce0758 Ajax: don’t test jQuery.ajax() on beforeunload in Chrome 31
Chrome 31 doesn't fire Ajax requests in beforeunload event handler.
There is no way for us to workaround it and it's been fixed in Chrome 32
so let's just blacklist Chrome 31 as long as it's in TestSwarm.
See https://code.google.com/p/chromium/issues/detail?id=321241
2013-12-18 15:10:42 +01:00
hongymagic
8d09ee0506 Ref #14503: Cherry-pick tests.
(cherry picked from commit 27b22f4ef5)
(cherry picked from commit 8dc0f2ea84)
(cherry picked from commit 936126f10d)
2013-11-15 12:19:05 -05:00
Richard Gibson
f9d41ac641 Fix #14379: AJAX requests on unload 2013-10-28 17:53:31 -04:00
Timmy Willison
e12746d756 Small adjustment to prefilter test. Follow the right path for prefixes. 2013-09-12 15:52:23 -05:00
Timmy Willison
6b7a52b21a Adjust prefilter test to error on string indexing in oldIE 2013-09-12 15:25:23 -05:00
Julian Aubourg
a2cd89a795 Handles HEAD requests as if they always were 204. Fixes #13922. 2013-05-23 02:11:37 +02:00
Timmy Willison
0fa52c11cb Update jshintrc to conform to new style guide. Conform to onevar and unused in tests. Fixes #13755. 2013-04-09 11:59:31 -04:00
Michał Gołębiowski
52394ba986 Move size() test to deprecated.js and avoid in other tests. Close gh-1237. 2013-04-08 20:38:20 -04:00
Michał Gołębiowski
dca7681284 Improve CSS and Support: comments. Close gh-1220.
1) corrected box-sizing rules order - the unprefixed value should always be the last one
2) removed last semi-colons in CSS rules
3) updated support comments

code review changes + more consistent comment spacing
2013-04-06 17:09:52 -04:00
Michał Gołębiowski
8ca9f931ec bind/unbind changed to on/off in unit tests; refs #13554 2013-03-25 22:06:49 -04:00
Michał Z. Gołębiowski
79992d7523 Edited comments and minor adjustments. Fixes #13553. Closes gh-1195. 2013-03-12 21:06:25 -04:00
dmitrygusev
eee2eaf1d7 Fix typos. Close gh-1186. 2013-02-28 15:45:10 -05:00
jaubourg
eebc77849c Fixes #11151, #13388. Minor refactor of response conversion and when/where
responseXXX fields are set on the jqXHR. Close gh-1164.

(Cherry-picked from 69b3d5ce0f)
2013-02-28 15:01:10 -05:00
byroot
bfc61b879e Don't try and convert data for 204 No Content responses. Fixes #13292. Fixes #13261. 2013-01-24 02:34:02 +01:00
jaubourg
4c6fb65d35 Fixes #13276. Unit test is enough since the 2.x XHR transport already dismissed the XML as parsed by the XHR instance. 2013-01-21 02:53:50 +01:00
jaubourg
d4e666d475 strengthens and dries 304 unit tests 2013-01-08 11:07:18 +01:00
jaubourg
ed6209e8b2 Tweaks the logic in the 304-related unit tests so that they pass for versions of Opera that support manual 304 handling as well as for those that don't 2013-01-08 10:10:18 +01:00
jaubourg
62acda819f Adds the abort on unload trick back in since IE9 still exhibits the bug 2013-01-07 10:34:14 -05:00
jaubourg
17049c73bc 2.0: reduced xhr transport 2013-01-07 10:34:07 -05:00
Rick Waldron
747dd8c042 Remove invalid test "jQuery.getJSON() - Using Native JSON" from test/unit/ajax.js
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2012-12-31 13:31:03 -05:00
jaubourg
b7ece8c620 Revert "Organizes the php scripts used for testing better, so that the whole logic of a unit, server-side and client-side, is contained within the unit itself. Nearly all ajax unit tests take advantage of the new 'framework'. Lots of files got deleted because they became redundant or weren't used anymore."
This reverts commit 228ab3ddae.
2012-12-05 14:54:14 +01:00
jaubourg
7f7007dffe Revert "228ab3d followup 1: fix test failures. Close gh-1056."
This reverts commit 20608b3579.
2012-12-05 14:54:00 +01:00
Richard Gibson
20608b3579 228ab3d followup 1: fix test failures. Close gh-1056. 2012-12-05 02:12:32 -05:00
jaubourg
228ab3ddae Organizes the php scripts used for testing better, so that the whole logic of a unit, server-side and client-side, is contained within the unit itself. Nearly all ajax unit tests take advantage of the new 'framework'. Lots of files got deleted because they became redundant or weren't used anymore. 2012-12-04 07:40:12 +01:00
Richard Gibson
5b9bf13439 No ticket: improve global variable/ajax request tracking 2012-12-02 23:32:16 -05:00
Dave Methvin
27c9360a1b Don't really want to expect any global events here. 2012-12-02 10:53:34 -05:00
Dave Methvin
b5acda7af2 Followup to #12989 fix, improve unit test resiliency. 2012-12-02 10:48:26 -05:00
Dave Methvin
c2d6847de0 Fix #12989. Remove ajax "global" event behavior. 2012-12-01 20:29:32 -05:00
jaubourg
6378a19c46 Unit test for #12004 2012-11-29 00:15:17 +01:00
jaubourg
e679f6c2db Use strictEqual rather than equal 2012-11-27 02:38:20 +01:00
jaubourg
512b826f9f Removes unnecessary closure and apply 2012-11-26 12:09:42 +01:00
jaubourg
d31cef38f2 Total revamping of the ajax unit tests 2012-11-26 03:31:19 +01:00
Richard Gibson
517846aad2 No ticket: speedup test suite. Close gh-1020. 2012-11-08 10:10:43 -05:00
Richard Gibson
81b094b2c1 No ticket: update test suite to pass QUnit globals check in most environments. Close gh-1016. 2012-11-05 17:24:03 -05:00
Richard Gibson
3f51504580 No ticket: remove test suite external dependencies 2012-11-01 17:32:08 -04:00
James Huston
ee9687d441 Fix #12751. Ensure parseJson throws in the same situations as JSON.parse. Close gh-993. 2012-10-17 16:28:55 -04:00
Ben Truyman
ce5784a480 Handle a falsy URL in the settings object for jQuery.ajax. Fixes #10093, Closes gh-979 2012-10-16 11:37:15 -04:00
Mike Sherov
ed9e34482a enforce double quotes via JSHint. Closes gh-975 2012-10-16 10:17:14 -04:00
jaubourg
6ba563887a fixes problematic JSONP test (gotta learn to count) 2012-10-16 10:03:17 -04:00
jaubourg
7d2e99fb64 comments out some problematic JSONP test until we figure out what the problem is 2012-10-16 09:39:33 -04:00
Rick Waldron
d6c84c5bb5 Breakout JSONP domain-related tests 2012-10-15 17:11:21 -04:00
Rick Waldron
a0cbf60192 Split failing cross domain tests into two separate test bodies.
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2012-10-15 16:00:50 -04:00
Erick Ruiz
be1f1d7b5b Fixing style for test unit ajax.js. https://github.com/jquery/2012-dev-summit/issues/56 2012-10-15 15:53:39 -04:00
James Huston
b36d58d4e8 Enforce expects in ajax.js (https://github.com/jquery/2012-dev-summit/issues/53) Closes gh-964 2012-10-15 12:37:02 -04:00
Richard Gibson
da3ff3afe4 Fix #12637: restore 1.8.1 ajax crossDomain logic. Close gh-944. 2012-10-03 21:07:50 -04:00
Dave Methvin
ebf4d43011 Revert "Chrome fails in ajax.js tests because TestSwarm/Ngnix won't give HEAD requests any respect. Skip them rather than hear Swarmy call FAILURE on each run."
This reverts commit 9c5089a60d.

These were not the droids we were looking for. Actually caused by a BrowserStack issue.
2012-09-30 22:23:02 -04:00
Dave Methvin
9c5089a60d Chrome fails in ajax.js tests because TestSwarm/Ngnix won't give HEAD requests any respect. Skip them rather than hear Swarmy call FAILURE on each run. 2012-09-11 15:42:10 -04:00
Dave Methvin
05337e78fa Revert "Fix #11586. Ajax DELETE ain't got no body, so data goes to its URL."
This reverts commit c01e022f33.

We actually changed DELETE to accept a body on purpose, see http://bugs.jquery.com/ticket/7285 .
2012-08-24 11:59:01 -04:00
Dave Methvin
c01e022f33 Fix #11586. Ajax DELETE ain't got no body, so data goes to its URL. 2012-08-23 21:33:29 -04:00
jaubourg
b292c4c2df Calling load with null as the data parameter now properly issues a GET request, not a POST request. Unit tests added. Fixes #12234. 2012-08-16 16:45:18 +02:00
Dave Methvin
bc07ae8c1d Loosen the ajax statusText check so Safari AND Chrome pass. 2012-07-25 14:31:21 -04:00
jaubourg
ced5e9037a Extracts the serialization code from the ajax module so that alternative ajax implementations can use it without the need for the whole ajax module to be included in the build. 2012-07-13 09:47:43 +02:00
Chad Killingsworth
de9bed319e Make unit tests friendly to Closure Compiler. Closes gh-845.
Conflicts:
    	test/unit/effects.js
    	test/unit/offset.js
2012-07-05 15:52:42 -04:00
Rick Waldron
a2758377df Adds src/deprecated.js, test/unit/deprecated.js; -deprecated flag; Moves jQuery.browser and removes use in test/unit/ajax.js. Fixes #11965 2012-06-25 10:02:28 -04:00
Rick Waldron
7ff3da186c Unit tests are linted and passing. 2012-06-21 15:30:24 -04:00
jaubourg
ac48a19b92 Some work to modularize ajax later on. 2012-06-11 14:00:16 +02:00
Richard Gibson
742872984e Fix #11743: Don't mask script errors in jQuery.ajax, closes gh-795. 2012-05-31 08:31:13 -07:00
Trey Hunner
f1dcaad097 Fix indentation in /speed and /test dirs, closes gh-780. 2012-05-18 13:28:50 -04:00
jaubourg
a743be19bd Fixes #11402. domManip now also removes the closing part of HTML comments or CDATA surrounding executed scripts. Unit tests added. 2012-05-06 01:27:01 +02:00
jaubourg
d3e034f6c7 Adds unit test to show order of parameters in the load callback are off for errors since the rewrite (this test works in master). 2012-05-02 02:22:56 +02:00
jaubourg
ae6b14abaf Makes test message more meaningful. 2012-05-02 02:15:09 +02:00
Oleg
6bed348a00 jQuery.ajaxSetup() data is merged with params. Fixes #10524 2012-05-01 14:39:45 -04:00
jaubourg
8ebb2f4793 Fixes #8205. Mitigates memory usage by recycling jsonp callback names the safest possible way (no kittens were harmed in the making of this). Doesn't even try to delete window properties (would necessitate a try/catch for IE which makes the cost in size prohibitive). Unit tests added. 2012-04-20 03:02:20 +02:00
tsinha
36d2d9ae93 Fix #8653, .param() undefined/null values become empty strings 2012-04-05 11:06:54 -04:00
jaubourg
914df9cb42 For much improved consistency, jqXHR.abort() sets a default statusText of 'canceled' right until after beforeSend has been called (in which case it reverts to the default of 'abort'): now all early aborts have a statusText of 'canceled'. 2012-04-02 02:04:46 +02:00
jaubourg
395612bb15 $.ajax now always returns an object implementing the Promise interface. Fixes #10944. Unit tests amended.
For back-compat, in case of an early abort, callbacks passed in the options are not called (while subsequent callbacks attached to the returned Promise are).
For early abort triggered by returning false in beforeSend, statusText is "canceled".
2012-04-02 01:54:19 +02:00
jaubourg
c5712a24bd Prevents firefox from hanging on the test (could it be that firefox passes the delay to start?). 2012-03-07 17:55:07 +01:00
jaubourg
d3fad51cad Fixes #11264 or rather seriously limits the risk of global ajaxSettings screwing with script loading in domManip. Gotta love globals and sneaky dependencies. Unit test added. 2012-03-07 16:54:05 +01:00
jaubourg
484cea1b56 Fixes #11426: getting the responseText of an xhr should be tried/caught because of IE's inability to give access to binary data. Unit test added. 2012-03-07 15:39:39 +01:00
Dave Methvin
8013163a36 Fix frequent Firefox failures -- force longer timeouts. 2012-03-02 21:54:08 -05:00
Mike Sherov
7226cf2800 fixes #10901, PHP required for unit tests, but still allow the tests to run 2012-02-16 23:17:57 -05:00
Rick Waldron
d828996478 Fix #10978: Let jQuery.param() accept non-native constructed objects. 2012-01-12 20:14:51 -05:00
Rick Waldron
166b9d252a Fix #10466. jQuery.param() should treat object-wrapped primitives as primitives. 2011-12-06 16:02:54 -05:00
Dave Methvin
c3600e261b Take 2 on "Fix ajax to always expect an Error object, per #10646."
We can't use jQuery.error to rethrow anymore since it constructs a new Error from its supposedly-string arg. Also, older IE stringifies Error objects into "[object Error]" so I've loosened the unit test criteria.

This reverts commit 586fb05919.
2011-11-08 15:52:30 -05:00
timmywil
f8eba6ee25 Comment out an ajax test that exposed a bug in Opera, to appease testswarm. 2011-11-07 21:33:03 -05:00
Mike Sherov
f35ba5e699 Fix #10691. Remove all instances of equals() and same(), as these are deprecated in QUnit. 2011-11-06 15:27:42 -05:00
jaubourg
3e0fe5ea3b We have too many unctions in this function. 2011-10-02 09:50:09 -04:00
Corey Frang
46219b57ba Landing pull request 525. Fixing tests with qunit.
More Details:
 - https://github.com/jquery/jquery/pull/525
2011-10-01 16:49:49 -04:00
jaubourg
6eb75676c4 Fixes a weird IE7 bug in the unit tests. If anybody can shed some light on this one, I'm a taker. 2011-09-22 09:35:57 +02:00
jaubourg
f37fc9966e Considers Safari XMLHttpRequest's bug when testing for custom status text. Will have to be revisited when $.browser.chrome is introduced. 2011-08-27 01:54:12 +02:00
jaubourg
0ed99097bd Fixes #9854: propagates native statusText onto jqXHR.statusText. statusText in callbacks is still normalized. Unit test added. 2011-07-23 02:39:12 +02:00
jaubourg
e6a99fdb0e Fixes #9887: ajax now supports circular references into objects passed as context. Prefilter and transport developpers should add their own custom option into flatOptions when needed. Unit test added. 2011-07-23 02:10:17 +02:00
jaubourg
e83fcdcb02 Fixes #9682. Removes data from the options for request with no content so that it is not used again in case of a retry. Unit test added. 2011-07-01 02:11:26 +02:00
timmywil
ecf6a3c383 Switch QUnit div from depreceted #main to #qunit-fixture 2011-04-17 02:43:57 -04:00
John Resig
ce7b311b92 Backing out fix for #6481. 2011-04-16 09:12:53 -07:00
louisremi
11adde5127 second batch 2011-04-11 22:33:29 +02:00
Dan Heberden
a7e7dbd978 Bug 7587; Enhancement/1.6 Feature: Bypass regexp filter on $.parseJSON and use native thrown exceptions if window.JSON.parse is available 2011-04-05 01:43:14 -07:00
jaubourg
714ae379db Fixes #8509. Makes URL regexp less overzealous and ensures it recognizes URL schemes which do not contain a conformant hierarchical structure ( as per section 2.1.2 of http://www.ietf.org/rfc/rfc2718.txt ). Also adds about: and adobe air's app: and app-storage: to the list of local protocols and provides a failover in case document.location is illformed. Unit test added. 2011-03-15 19:20:03 +01:00
gnarf
71bd828d9f Grouped up the test 2011-02-24 13:21:05 -06:00
gnarf
14e9da51f9 A quick change to detect AIR urls 2011-02-24 13:10:33 -06:00
jaubourg
5b38439011 Fixes #8297. Makes sure response headers with empty values are handled properly and do not prevent proper parsing of the entire response headers string. Unit test amended. 2011-02-17 17:03:09 +01:00
jaubourg
1ddfdabbb9 Fixes #8277. Sets data to undefined rather than null when it is not provided in ajax helpers so that it won't revent data set in ajaxSettings from being used. Unit test added. 2011-02-15 21:53:38 +01:00
Anton M
481d940e79 Remove duplicate test. 2011-02-11 11:59:42 +01:00
jaubourg
f6e173437e Fixes #8219. Introduces the mimeType option to override content-type header in conversion (and in native xhr when possible). Adds companion overrideMimeType method on jqXHR object (it simply sets the option). Unit test added. 2011-02-09 17:47:33 +01:00
jaubourg
a2dbdc1f54 Fixes a bug that prevented headers from being set in an ajaxSend callback. Unit test modified. 2011-02-07 16:35:32 +01:00
jaubourg
2c77704b14 Fixes a typo in the title of the load() unit test. 2011-02-05 03:06:21 +01:00
Anton M
08fcde6a59 Remove an invalid ajax test and some code that is no longer used by any test. 2011-02-05 00:20:23 +01:00
jaubourg
03bad0a960 Fixes abort in prefilter. No global event will be fired in that case even if the global option is set to true. Unit test added. 2011-02-04 22:19:23 +01:00
Anton Kovalyov
fdd4101fe9 Fixes #7945. Make jQuery.param() serialize plain objects with a property named jquery correctly. 2011-02-02 00:32:29 +01:00