Skip to content

Commit

Permalink
Tests: move readywait to an iframe test
Browse files Browse the repository at this point in the history
  • Loading branch information
stevemao authored and timmywil committed Mar 20, 2017
1 parent d33bb9c commit fcc9a9e
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 44 deletions.
14 changes: 7 additions & 7 deletions src/deprecated.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,16 @@ jQuery.fn.extend( {
return arguments.length === 1 ?
this.off( selector, "**" ) :
this.off( types, selector || "**", fn );
},
holdReady: function( hold ) {
if ( hold ) {
jQuery.readyWait++;
} else {
jQuery.ready( true );
}
}
} );

jQuery.holdReady = function( hold ) {
if ( hold ) {
jQuery.readyWait++;
} else {
jQuery.ready( true );
}
};
jQuery.isArray = Array.isArray;
jQuery.parseJSON = JSON.parse;
jQuery.nodeName = nodeName;
Expand Down
28 changes: 17 additions & 11 deletions test/readywait.html → test/data/readywait.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,22 +14,28 @@
#output { background-color: green }
#expectedOutput { background-color: green }
</style>
<script src="jquery.js"></script>
<script src="../jquery.js"></script>
<script src="./iframeTest.js"></script>

<!-- Load the script loader that uses
jQuery.readyWait -->
<script src="data/readywaitloader.js"></script>

<script type="text/javascript">
jQuery(function() {
// The delayedMessage is defined by
// the readywaitasset.js file, so the
// next line will only work if this DOM
// ready callback is called after readyWait
// has been decremented by readywaitloader.js
// If an error occurs.
jQuery("#output").append(delayedMessage);
});
(function() {
var released = false;
// Hold on jQuery!
jQuery.holdReady( true );

setTimeout( function() {
released = true;
jQuery.holdReady( false );
}, 300 );

jQuery(function() {
jQuery( "#output" ).text( "Ready called, holdReady released: " + released );
startIframeTest( released );
});
})();
</script>
</head>
<body>
Expand Down
1 change: 0 additions & 1 deletion test/data/readywaitasset.js

This file was deleted.

25 changes: 0 additions & 25 deletions test/data/readywaitloader.js

This file was deleted.

13 changes: 13 additions & 0 deletions test/unit/ready.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ QUnit.module( "ready" );
var notYetReady, noEarlyExecution,
whenified = jQuery.when( jQuery.ready ),
promisified = Promise.resolve( jQuery.ready ),
start = new Date(),
order = [],
args = {};

Expand Down Expand Up @@ -147,4 +148,16 @@ QUnit.module( "ready" );
done();
} );
} );

testIframe(
"holdReady test needs to be a standalone test since it deals with DOM ready",
"readywait.html",
function( assert, jQuery, window, document, releaseCalled ) {
assert.expect( 2 );
var now = new Date();
assert.ok( now - start >= 300, "Needs to have waited at least half a second" );
assert.ok( releaseCalled, "The release function was called, which resulted in ready" );
}
);

} )();

0 comments on commit fcc9a9e

Please sign in to comment.