Avoid chance fails by noConflict race conditions.

This commit is contained in:
John-David Dalton
2013-12-16 02:36:07 -08:00
parent 676e1705c1
commit 98566150d2
2 changed files with 5 additions and 9 deletions

View File

@@ -115,12 +115,6 @@
delete Object._keys;
}
// Avoid a bug in IE compat mode where, under certain
// circumstances, timer API like `setTimeout` may not
// be the same reference as `window.setTimeout`.
window.clearTimeout = window.clearTimeout;
window.setTimeout = window.setTimeout;
addBizarroMethods();
// load Lo-Dash and expose it to the bad extensions/shims
@@ -209,6 +203,8 @@
function loadModulesAndTests() {
require(getConfig(), ['lodash', 'shimmed', 'underscore'], function(lodash, shimmed, underscore) {
var oldDash = window._;
if (shimmed && shimmed.noConflict) {
shimmedModule = shimmed.noConflict();
shimmedModule.moduleName = 'shimmed';
@@ -221,7 +217,7 @@
lodashModule = lodash;
lodashModule.moduleName = 'lodash';
}
if (ui.isModularize) {
if (oldDash || ui.isModularize) {
window._ = lodash;
}
require(['test'], function() {

View File

@@ -8704,7 +8704,7 @@
test('should accept falsey arguments', 157, function() {
var emptyArrays = _.map(falsey, function() { return []; }),
isExported = '_' in root,
isExposed = '_' in root,
oldDash = root._;
_.forEach(acceptFalsey, function(methodName) {
@@ -8721,7 +8721,7 @@
});
if (methodName == 'noConflict') {
if (isExported) {
if (isExposed) {
root._ = oldDash;
} else {
delete root._;