aboutsummaryrefslogtreecommitdiffstats
path: root/test/data
diff options
context:
space:
mode:
authorRichard Gibson <richard.gibson@gmail.com>2017-04-25 15:39:41 -0400
committerGitHub <noreply@github.com>2017-04-25 15:39:41 -0400
commitbb79f728b089c60338a4c336afd6ff89e739e15a (patch)
treea53b280a1deaa3ae9e4eb9e9c6fa222a3e3d313d /test/data
parent87a2d3aae74f1c2afd6497de6bb237dbf81dcfc6 (diff)
downloadjquery-bb79f728b089c60338a4c336afd6ff89e739e15a.tar.gz
jquery-bb79f728b089c60338a4c336afd6ff89e739e15a.zip
Tests: Attach test iframes to the body for visibility-dependent code
Ref 1d2df772b4d6e5dbf91df6e75f4a1809f7879ab0 Closes gh-3645
Diffstat (limited to 'test/data')
-rw-r--r--test/data/testinit.js15
-rw-r--r--test/data/testrunner.js3
2 files changed, 12 insertions, 6 deletions
diff --git a/test/data/testinit.js b/test/data/testinit.js
index dd06f86be..c55ebd1bb 100644
--- a/test/data/testinit.js
+++ b/test/data/testinit.js
@@ -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;
diff --git a/test/data/testrunner.js b/test/data/testrunner.js
index 0784ae0a8..b8f1127ab 100644
--- a/test/data/testrunner.js
+++ b/test/data/testrunner.js
@@ -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 ) {