Commit Graph

35 Commits

Author SHA1 Message Date
Richard Gibson
76084372c2 Deferred: Remove default callback context
Employs strict mode to simplify Deferred callback context handling.

Fixes gh-3060
Closes gh-3061
2016-04-23 00:30:48 -04:00
Michał Gołębiowski
6072d150d6 Docs: Update support comments to follow the new syntax
The changes follow the spec proposed in:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-69379197
2016-03-30 23:45:17 +02:00
Michał Gołębiowski
5c01cb1cc4 Tests: Fix Deferred tests in Android 5.0's stock Chrome browser & Yandex.Browser
Some Chrome versions newer than 30 but older than 42 display the "undefined is
not a function" error, not mentioning the function name. This has been fixed
in Chrome 42. Relax two tests to allow for this divergence in older Chromoiums.

This affects our Android 5.0 & Yandex.Browser testing.
2016-01-20 13:54:31 +01:00
Dave Methvin
36a7cf9b1e Deferred: Warn on exceptions that are likely programming errors
Fixes gh-2736
Closes gh-2737
2016-01-13 12:39:58 -05:00
Dave Methvin
bdf1b8f317 Deferred: Remove undocumented progress notifications in $.when
Fixes gh-2710
Closes gh-2816
2016-01-13 12:21:17 -05:00
Timmy Willison
78b9eac119 Deferred: syncronize single and multiple target handling in $.when
Fixes gh-2546
Fixes gh-2018
Close gh-2707
2015-11-13 11:16:26 -05:00
Oleg Gaidarenko
c8d15a2f9f Tests: further improvements QUnit 2.0 migration
* Remove QUnit jshint globals
* Extend QUnit.assert methods
* Use assert.async instead of start/stop/done

Ref b930d14ce6
2015-09-08 04:06:20 +03:00
Oleg Gaidarenko
10fdad742a Build: Update jscs and lint files
Fixes gh-2056
2015-09-07 20:03:50 +03:00
Oleg Gaidarenko
b930d14ce6 Tests: partially use new qunit interface
http://qunitjs.com/upgrade-guide-2.x/

For most of the boring work was used
https://github.com/apsdehal/qunit-migrate package

However, it can't update local qunit helpers, plus in some places
old QUnit.asyncTest signature is still used

Fixes gh-2540
2015-08-16 09:02:01 +03:00
Michał Gołębiowski
1c59b308d2 Build: Acknowledge Android 2.3 is not ES5-compatible
Android 2.3 chokes on unquoted reserved words being used as property names
which was making Deferred tests not run.

Acknowledge the sad fact that Android 2.3 is not ES5-compliant browser
and enable the "es3" option in JSHint config.

Fixes gh-2478
Closes gh-2481
2015-07-20 18:37:26 +02:00
Timmy Willison
84ccf2606c Deferred: add .catch handler
Fixes gh-2102
2015-07-06 10:47:30 -04:00
Richard Gibson
002240a6eb Deferred: Always handle progress callbacks before done/fail
Fixes gh-2013
Fixes gh-2010
Closes gh-2210
2015-04-22 15:24:37 -04:00
Richard Gibson
555a50d340 Deferred: Backwards-compatible standards interoperability
Fixes gh-1722
Closes gh-1996
2015-03-20 02:00:17 -04:00
Nicolas HENRY
ab20d9d24f Deferred: Fix $.when with resolved deferred and progress callbacks
Fixes gh-1894
Closes gh-1915
2014-12-25 15:39:28 +03:00
Daniel Herman
584a4af9c8 No ticket: add assertions for jQuery.when( array ). Close gh-1312. 2013-08-19 18:25:42 +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
nanto_vi
e7fdda9819 Propagete context of returned deferred object in Deferred.then(). Fixes #13160 2013-01-07 02:49:15 +09:00
jaubourg
23d7cf0488 Deferred: .resolve(), .reject() and .notify() now set the callback context to the promise instance rather than the deferred instance ; .then() has also been amended. Fixes #11405. 2012-12-07 15:14:12 +01:00
Erick Ruiz de Chavez
efc2d8b1a6 Fixing style for deferred.js unit tests. Close gh-973.
Close jquery/2012-dev-summit/#56
2012-10-16 08:24:18 -04:00
jaubourg
74cdd78497 deferred.promise(obj) should work with non-objects. Fixes #12521. Much needed unit tests added! 2012-09-13 15:44:12 +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
7ff3da186c Unit tests are linted and passing. 2012-06-21 15:30:24 -04:00
jaubourg
f93a2f569d Preserves context objects when multiple Deferreds are passed to $.when(). Context is an array containing the original contexts in order. When non-observable value is given, associated context is undefined. In case only a single non-observable value is given, context is the global object (thanks so much Function.prototype.apply!). Fixes #11749. 2012-05-12 21:41:39 +02:00
Dave Methvin
c5fda2945c Fix #11736. Remove deprecated Deferred.isResolved/isRejected. 2012-05-11 15:02:18 -04:00
jaubourg
a41f240674 Makes Deferred implementation truly Promise/A compliant. Unit tests amended. Actually few changes required in jQuery's own source and we gained 8 bytes minified gzipped \o/. 2012-04-02 01:29:39 +02:00
jaubourg
2a9f0681de Have Deferred.always return the object onto which it is currently attached to enable true chainability. Fixes #10723. Unit tests added. 2011-11-09 01:02:29 +01: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
d29182e8d0 Removes isPending and introduces state as a means to retrieve the Deferred/Promise state. Unit tests amended. 2011-10-11 20:23:56 -04:00
jaubourg
749d32a290 isProgressing becomes isPending. Unit tests added. 2011-10-04 12:08:46 -04:00
jaubourg
4092e3d275 $.Callbacks, $.Topic and notify/progress on $.Deferred. 2011-09-19 15:42:30 -04:00
jaubourg
139135a98a Fixes #9446. Context is properly propagated using pipe. If context was the original deferred, then context is updated to next deferred in the chain. Unit tests added. 2011-07-01 01:51:50 +02:00
jaubourg
8c13cfa805 Fixes #9104. Returning null or undefined in a pipe callback shouldn't end up throwing an exception. Silly, silly, me. 2011-05-09 10:01:20 +02:00
jaubourg
7a1c6beab0 Renames chain as pipe. 2011-04-08 17:35:08 +02:00
jaubourg
bb99899ca0 Adds always and chain methods to deferreds. 2011-04-07 05:49:32 +02:00
jaubourg
2d0bc7ce72 Moves Deferred-related code into a separate module. Context handling has been simplified in _Deferred.resolve and jQuery.when has been refactored for clarity (and minor optimization). 2011-03-03 19:38:06 +01:00