Permalink
Browse files

Core: expose noConflict in AMD mode

- For compability reasons, we had already added the global
  in AMD mode, but without noConflict. This adds back noConflict
  to AMD (which fixes noConflict mode in the tests).

Fixes gh-2930
  • Loading branch information...
timmywil committed Aug 15, 2016
1 parent 560c0c6 commit 52e24471c89b80e6208b4987bb76994e64c1e489
Showing with 24 additions and 32 deletions.
  1. +1 −5 build/tasks/build.js
  2. +6 −6 src/exports/global.js
  3. +3 −2 src/jquery.js
  4. +1 −3 test/data/testinit.js
  5. +13 −16 test/unit/core.js
View
@@ -17,7 +17,6 @@ module.exports = function( grunt ) {
read = function( fileName ) {
return grunt.file.read( srcFolder + fileName );
},
globals = read( "exports/global.js" ),
wrapper = read( "wrapper.js" ).split( /\/\/ \@CODE\n\/\/[^\n]+/ ),
config = {
baseUrl: "src",
@@ -39,10 +38,7 @@ module.exports = function( grunt ) {
skipSemiColonInsertion: true,
wrap: {
start: wrapper[ 0 ].replace( /\/\*\s*eslint(?: |-).*\s*\*\/\n/, "" ),
end: globals.replace(
/\/\*\s*ExcludeStart\s*\*\/[\w\W]*?\/\*\s*ExcludeEnd\s*\*\//ig,
""
) + wrapper[ 1 ]
end: wrapper[ 1 ]
},
rawText: {},
onBuildWrite: convert
View
@@ -1,10 +1,8 @@
/* ExcludeStart */
define( [
"../core"
], function( jQuery, noGlobal ) {
// This file is included in a different way from all the others
// so the "use strict" pragma is not needed.
/* eslint strict: "off" */
/* ExcludeEnd */
"use strict";
var
@@ -32,3 +30,5 @@ jQuery.noConflict = function( deep ) {
if ( !noGlobal ) {
window.jQuery = window.$ = jQuery;
}
} );
View
@@ -30,11 +30,12 @@ define( [
"./offset",
"./dimensions",
"./deprecated",
"./exports/amd"
"./exports/amd",
"./exports/global"
], function( jQuery ) {
"use strict";
return ( window.jQuery = window.$ = jQuery );
return jQuery;
} );
View
@@ -320,9 +320,7 @@ this.loadTests = function() {
/**
* Run in noConflict mode
*/
if ( jQuery.noConflict ) {
jQuery.noConflict();
}
jQuery.noConflict();
// Load the TestSwarm listener if swarmURL is in the address.
if ( QUnit.isSwarm ) {
View
@@ -197,27 +197,24 @@ QUnit.test( "globalEval execution after script injection (#7862)", function( ass
assert.ok( window.strictEvalTest - now < 500, "Code executed synchronously" );
} );
// This is not run in AMD mode
if ( jQuery.noConflict ) {
QUnit.test( "noConflict", function( assert ) {
assert.expect( 7 );
QUnit.test( "noConflict", function( assert ) {
assert.expect( 7 );
var $$ = jQuery;
var $$ = jQuery;
assert.strictEqual( jQuery, jQuery.noConflict(), "noConflict returned the jQuery object" );
assert.strictEqual( window[ "jQuery" ], $$, "Make sure jQuery wasn't touched." );
assert.strictEqual( window[ "$" ], original$, "Make sure $ was reverted." );
assert.strictEqual( jQuery, jQuery.noConflict(), "noConflict returned the jQuery object" );
assert.strictEqual( window[ "jQuery" ], $$, "Make sure jQuery wasn't touched." );
assert.strictEqual( window[ "$" ], original$, "Make sure $ was reverted." );
jQuery = $ = $$;
jQuery = $ = $$;
assert.strictEqual( jQuery.noConflict( true ), $$, "noConflict returned the jQuery object" );
assert.strictEqual( window[ "jQuery" ], originaljQuery, "Make sure jQuery was reverted." );
assert.strictEqual( window[ "$" ], original$, "Make sure $ was reverted." );
assert.ok( $$().pushStack( [] ), "Make sure that jQuery still works." );
assert.strictEqual( jQuery.noConflict( true ), $$, "noConflict returned the jQuery object" );
assert.strictEqual( window[ "jQuery" ], originaljQuery, "Make sure jQuery was reverted." );
assert.strictEqual( window[ "$" ], original$, "Make sure $ was reverted." );
assert.ok( $$().pushStack( [] ), "Make sure that jQuery still works." );
window[ "jQuery" ] = jQuery = $$;
} );
}
window[ "jQuery" ] = jQuery = $$;
} );
QUnit.test( "trim", function( assert ) {
assert.expect( 13 );

0 comments on commit 52e2447

Please sign in to comment.