mirror of
https://github.com/jquery/jquery.git
synced 2025-01-10 18:24:24 +00:00
Tests: Attach test iframes to the body for visibility-dependent code
Ref 1d2df772b4
Closes gh-3645
This commit is contained in:
parent
87a2d3aae7
commit
bb79f728b0
@ -233,8 +233,10 @@ this.ajaxTest = function( title, expect, options ) {
|
||||
|
||||
this.testIframe = function( title, fileName, func ) {
|
||||
QUnit.test( title, function( assert ) {
|
||||
var iframe;
|
||||
var done = assert.async();
|
||||
var done = assert.async(),
|
||||
$iframe = supportjQuery( "<iframe/>" )
|
||||
.css( { position: "absolute", width: "500px", left: "-600px" } )
|
||||
.attr( { id: "qunit-fixture-iframe", src: url( "./data/" + fileName ) } );
|
||||
|
||||
// Test iframes are expected to invoke this via startIframeTest (cf. iframeTest.js)
|
||||
window.iframeCallback = function() {
|
||||
@ -247,13 +249,14 @@ this.testIframe = function( title, fileName, func ) {
|
||||
|
||||
func.apply( this, args );
|
||||
func = function() {};
|
||||
iframe.remove();
|
||||
$iframe.remove();
|
||||
done();
|
||||
} );
|
||||
};
|
||||
iframe = jQuery( "<div/>" ).css( { position: "absolute", width: "500px", left: "-600px" } )
|
||||
.append( jQuery( "<iframe/>" ).attr( "src", url( "./data/" + fileName ) ) )
|
||||
.appendTo( "#qunit-fixture" );
|
||||
|
||||
// Attach iframe to the body for visibility-dependent code
|
||||
// It will be removed by either the above code, or the testDone callback in testrunner.js
|
||||
$iframe.appendTo( document.body );
|
||||
} );
|
||||
};
|
||||
this.iframeCallback = undefined;
|
||||
|
@ -167,6 +167,9 @@ QUnit.testDone( function() {
|
||||
// ...even if the jQuery under test has a broken .empty()
|
||||
supportjQuery( "#qunit-fixture" ).empty();
|
||||
|
||||
// Remove the iframe fixture
|
||||
supportjQuery( "#qunit-fixture-iframe" ).remove();
|
||||
|
||||
// Reset internal jQuery state
|
||||
jQuery.event.global = {};
|
||||
if ( ajaxSettings ) {
|
||||
|
Loading…
Reference in New Issue
Block a user