mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
Tests: Update the loader so test pages always get jQuery
Pages used for iframe tests will now successfully load jQuery, even when opened directly in the browser. Closes gh-3489
This commit is contained in:
parent
25c6a0a238
commit
14b393d0d6
47
test/jquery.js
vendored
47
test/jquery.js
vendored
@ -2,21 +2,35 @@
|
|||||||
( function() {
|
( function() {
|
||||||
/* global loadTests: false */
|
/* global loadTests: false */
|
||||||
|
|
||||||
var src,
|
var path = window.location.pathname.split( "test" )[ 0 ],
|
||||||
path = window.location.pathname.split( "test" )[ 0 ],
|
|
||||||
QUnit = window.QUnit || parent.QUnit,
|
QUnit = window.QUnit || parent.QUnit,
|
||||||
require = window.require || parent.require;
|
require = window.require || parent.require,
|
||||||
|
|
||||||
// iFrames won't load AMD (the iframe tests synchronously expect jQuery to be there)
|
// Default to unminified jQuery for directly-opened iframes
|
||||||
|
urlParams = QUnit ?
|
||||||
|
QUnit.urlParams :
|
||||||
|
{ dev: true },
|
||||||
|
src = urlParams.dev ?
|
||||||
|
"dist/jquery.js" :
|
||||||
|
"dist/jquery.min.js";
|
||||||
|
|
||||||
|
// Define configuration parameters controlling how jQuery is loaded
|
||||||
|
if ( QUnit ) {
|
||||||
QUnit.config.urlConfig.push( {
|
QUnit.config.urlConfig.push( {
|
||||||
id: "amd",
|
id: "amd",
|
||||||
label: "Load with AMD",
|
label: "Load with AMD",
|
||||||
tooltip: "Load the AMD jQuery file (and its dependencies)"
|
tooltip: "Load the AMD jQuery file (and its dependencies)"
|
||||||
} );
|
} );
|
||||||
|
QUnit.config.urlConfig.push( {
|
||||||
|
id: "dev",
|
||||||
|
label: "Load unminified",
|
||||||
|
tooltip: "Load the development (unminified) jQuery file"
|
||||||
|
} );
|
||||||
|
}
|
||||||
|
|
||||||
// If QUnit is on window, this is the main window
|
// Honor AMD loading on the main window (detected by seeing QUnit on it).
|
||||||
// This detection allows AMD tests to be run in an iframe
|
// This doesn't apply to iframes because they synchronously expect jQuery to be there.
|
||||||
if ( QUnit.urlParams.amd && window.QUnit ) {
|
if ( urlParams.amd && window.QUnit ) {
|
||||||
require.config( {
|
require.config( {
|
||||||
baseUrl: path
|
baseUrl: path
|
||||||
} );
|
} );
|
||||||
@ -28,28 +42,15 @@
|
|||||||
} else {
|
} else {
|
||||||
require( [ src ] );
|
require( [ src ] );
|
||||||
}
|
}
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Config parameter to use minified jQuery
|
// Otherwise, load synchronously
|
||||||
QUnit.config.urlConfig.push( {
|
|
||||||
id: "dev",
|
|
||||||
label: "Load unminified",
|
|
||||||
tooltip: "Load the development (unminified) jQuery file"
|
|
||||||
} );
|
|
||||||
if ( QUnit.urlParams.dev ) {
|
|
||||||
src = "dist/jquery.js";
|
|
||||||
} else {
|
} else {
|
||||||
src = "dist/jquery.min.js";
|
|
||||||
}
|
|
||||||
|
|
||||||
// Load jQuery
|
|
||||||
document.write( "<script id='jquery-js' src='" + path + src + "'><\x2Fscript>" );
|
document.write( "<script id='jquery-js' src='" + path + src + "'><\x2Fscript>" );
|
||||||
|
|
||||||
// Synchronous-only tests
|
// Synchronous-only tests (other tests are loaded from the test page)
|
||||||
// Other tests are loaded from the test page
|
|
||||||
if ( typeof loadTests !== "undefined" ) {
|
if ( typeof loadTests !== "undefined" ) {
|
||||||
document.write( "<script src='" + path + "test/unit/ready.js'><\x2Fscript>" );
|
document.write( "<script src='" + path + "test/unit/ready.js'><\x2Fscript>" );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
} )();
|
} )();
|
||||||
|
Loading…
Reference in New Issue
Block a user