diff options
author | Richard Gibson <richard.gibson@gmail.com> | 2017-04-25 15:39:41 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-25 15:39:41 -0400 |
commit | bb79f728b089c60338a4c336afd6ff89e739e15a (patch) | |
tree | a53b280a1deaa3ae9e4eb9e9c6fa222a3e3d313d /test/data | |
parent | 87a2d3aae74f1c2afd6497de6bb237dbf81dcfc6 (diff) | |
download | jquery-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.js | 15 | ||||
-rw-r--r-- | test/data/testrunner.js | 3 |
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 ) { |