diff options
author | Michał Gołębiowski <m.goleb@gmail.com> | 2014-03-13 02:18:29 +0100 |
---|---|---|
committer | Michał Gołębiowski <m.goleb@gmail.com> | 2014-03-13 02:18:29 +0100 |
commit | 725cdebd3949ca98d4180897df5ddfd8ef58305b (patch) | |
tree | 533e92c5481d8e33b65fdd0432ef0c9d9afa70c8 | |
parent | 412555a0b001d19e2dedf4c3c23a794ad8fa398c (diff) | |
download | jquery-725cdebd3949ca98d4180897df5ddfd8ef58305b.tar.gz jquery-725cdebd3949ca98d4180897df5ddfd8ef58305b.zip |
Core: Add test for jQuery.ready.promise fallback load
Fix #13655
Close gh-1209
Ref 32b066d3805a48f8c8312562ed52a1b5910b1d85
-rw-r--r-- | test/data/core/dont_return.php | 3 | ||||
-rw-r--r-- | test/data/core/dynamic_ready.html | 35 | ||||
-rw-r--r-- | test/unit/core.js | 5 |
3 files changed, 43 insertions, 0 deletions
diff --git a/test/data/core/dont_return.php b/test/data/core/dont_return.php new file mode 100644 index 000000000..3ac56e1ef --- /dev/null +++ b/test/data/core/dont_return.php @@ -0,0 +1,3 @@ +<?php +sleep(10000); +?> diff --git a/test/data/core/dynamic_ready.html b/test/data/core/dynamic_ready.html new file mode 100644 index 000000000..799145b98 --- /dev/null +++ b/test/data/core/dynamic_ready.html @@ -0,0 +1,35 @@ +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <script src="../../jquery.js"></script> + <script>var $j = jQuery.noConflict();</script> +</head> +<body> +<iframe id="dont_return" src="dont_return.php"></iframe> +<script> + var timeoutId, $, + timeoutFired = false; + + setTimeout(function () { + // Load another jQuery copy using the first one. + $j.getScript( "../../../dist/jquery.js", function () { + $j( "#dont_return" ).attr( "src", "about:blank" ); + + // document ready handled by the just-loaded jQuery copy. + $(function () { + clearTimeout( timeoutId ); + if ( !timeoutFired ) { + window.parent.iframeCallback( true ); + } + }); + }); + + timeoutId = setTimeout(function () { + timeoutFired = true; + window.parent.iframeCallback( false ); + }, 3000); + }); +</script> +</body> +</html> diff --git a/test/unit/core.js b/test/unit/core.js index c59acb84c..d95767586 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -1486,6 +1486,11 @@ testIframeWithCallback( "Conditional compilation compatibility (#13274)", "core/ ok( $(), "jQuery executes" ); }); +testIframeWithCallback( "document ready when jQuery loaded asynchronously (#13655)", "core/dynamic_ready.html", function( ready ) { + expect( 1 ); + equal( true, ready, "document ready correctly fired when jQuery is loaded after DOMContentLoaded" ); +}); + testIframeWithCallback( "Tolerating alias-masked DOM properties (#14074)", "core/aliased.html", function( errors ) { expect( 1 ); |