dist/ember-testing.js in ember-source-2.1.2 vs dist/ember-testing.js in ember-source-2.2.0.beta.1

- old
+ new

@@ -1,17 +1,17 @@ +;(function() { /*! * @overview Ember - JavaScript Application Framework * @copyright Copyright 2011-2015 Tilde Inc. and contributors * Portions Copyright 2006-2011 Strobe Inc. * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 2.1.2 + * @version 2.2.0-beta.1 */ -(function() { -var enifed, requireModule, eriuqer, requirejs, Ember; +var enifed, requireModule, require, requirejs, Ember; var mainContext = this; (function() { var isNode = typeof window === 'undefined' && typeof process !== 'undefined' && {}.toString.call(process) === '[object process]'; @@ -38,11 +38,11 @@ } registry[name] = value; }; - requirejs = eriuqer = requireModule = function(name) { + requirejs = require = requireModule = function(name) { return internalRequire(name, null); } function internalRequire(name, referrerName) { var exports = seen[name]; @@ -69,62 +69,278 @@ for (var i = 0; i < length; i++) { if (deps[i] === 'exports') { reified.push(exports); } else { - reified.push(internalRequire(resolve(deps[i], name), name)); + reified.push(internalRequire(deps[i], name)); } } callback.apply(this, reified); return exports; }; - function resolve(child, name) { - if (child.charAt(0) !== '.') { - return child; - } - var parts = child.split('/'); - var parentBase = name.split('/').slice(0, -1); + requirejs._eak_seen = registry; - for (var i = 0, l = parts.length; i < l; i++) { - var part = parts[i]; + Ember.__loader = { + define: enifed, + require: require, + registry: registry + }; + } else { + enifed = Ember.__loader.define; + requirejs = require = requireModule = Ember.__loader.require; + } +})(); - if (part === '..') { - parentBase.pop(); - } else if (part === '.') { - continue; +enifed('ember-debug/deprecate', ['exports', 'ember-metal/core', 'ember-metal/error', 'ember-metal/logger', 'ember-debug/handlers'], function (exports, _emberMetalCore, _emberMetalError, _emberMetalLogger, _emberDebugHandlers) { + /*global __fail__*/ + + 'use strict'; + + var _slice = Array.prototype.slice; + exports.registerHandler = registerHandler; + exports.default = deprecate; + + function registerHandler(handler) { + _emberDebugHandlers.registerHandler('deprecate', handler); + } + + function formatMessage(_message, options) { + var message = _message; + + if (options && options.id) { + message = message + (' [deprecation id: ' + options.id + ']'); + } + + if (options && options.url) { + message += ' See ' + options.url + ' for more details.'; + } + + return message; + } + + registerHandler(function logDeprecationToConsole(message, options) { + var updatedMessage = formatMessage(message, options); + + _emberMetalLogger.default.warn('DEPRECATION: ' + updatedMessage); + }); + + registerHandler(function logDeprecationStackTrace(message, options, next) { + if (_emberMetalCore.default.LOG_STACKTRACE_ON_DEPRECATION) { + var stackStr = ''; + var error = undefined, + stack = undefined; + + // When using new Error, we can't do the arguments check for Chrome. Alternatives are welcome + try { + __fail__.fail(); + } catch (e) { + error = e; + } + + if (error.stack) { + if (error['arguments']) { + // Chrome + stack = error.stack.replace(/^\s+at\s+/gm, '').replace(/^([^\(]+?)([\n$])/gm, '{anonymous}($1)$2').replace(/^Object.<anonymous>\s*\(([^\)]+)\)/gm, '{anonymous}($1)').split('\n'); + stack.shift(); } else { - parentBase.push(part); + // Firefox + stack = error.stack.replace(/(?:\n@:0)?\s+$/m, '').replace(/^\(/gm, '{anonymous}(').split('\n'); } + + stackStr = '\n ' + stack.slice(2).join('\n '); } - return parentBase.join('/'); + var updatedMessage = formatMessage(message, options); + + _emberMetalLogger.default.warn('DEPRECATION: ' + updatedMessage + stackStr); + } else { + next.apply(undefined, arguments); } + }); - requirejs._eak_seen = registry; + registerHandler(function raiseOnDeprecation(message, options, next) { + if (_emberMetalCore.default.ENV.RAISE_ON_DEPRECATION) { + var updatedMessage = formatMessage(message); - Ember.__loader = { - define: enifed, - require: eriuqer, - registry: registry + throw new _emberMetalError.default(updatedMessage); + } else { + next.apply(undefined, arguments); + } + }); + + var missingOptionsDeprecation = 'When calling `Ember.deprecate` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include `id` and `until` properties.'; + exports.missingOptionsDeprecation = missingOptionsDeprecation; + var missingOptionsIdDeprecation = 'When calling `Ember.deprecate` you must provide `id` in options.'; + exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation; + var missingOptionsUntilDeprecation = 'When calling `Ember.deprecate` you must provide `until` in options.'; + + exports.missingOptionsUntilDeprecation = missingOptionsUntilDeprecation; + /** + Display a deprecation warning with the provided message and a stack trace + (Chrome and Firefox only). Ember build tools will remove any calls to + `Ember.deprecate()` when doing a production build. + + @method deprecate + @param {String} message A description of the deprecation. + @param {Boolean} test A boolean. If falsy, the deprecation + will be displayed. + @param {Object} options An object that can be used to pass + in a `url` to the transition guide on the emberjs.com website, and a unique + `id` for this deprecation. The `id` can be used by Ember debugging tools + to change the behavior (raise, log or silence) for that specific deprecation. + The `id` should be namespaced by dots, e.g. "view.helper.select". + @public + */ + + function deprecate(message, test, options) { + if (!options || !options.id && !options.until) { + deprecate(missingOptionsDeprecation, false, { + id: 'ember-debug.deprecate-options-missing', + until: '3.0.0', + url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' + }); + } + + if (options && !options.id) { + deprecate(missingOptionsIdDeprecation, false, { + id: 'ember-debug.deprecate-id-missing', + until: '3.0.0', + url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' + }); + } + + if (options && !options.until) { + deprecate(missingOptionsUntilDeprecation, options && options.until, { + id: 'ember-debug.deprecate-until-missing', + until: '3.0.0', + url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' + }); + } + + _emberDebugHandlers.invoke.apply(undefined, ['deprecate'].concat(_slice.call(arguments))); + } +}); +enifed('ember-debug/handlers', ['exports', 'ember-debug/is-plain-function', 'ember-debug/deprecate'], function (exports, _emberDebugIsPlainFunction, _emberDebugDeprecate) { + 'use strict'; + + exports.generateTestAsFunctionDeprecation = generateTestAsFunctionDeprecation; + exports.registerHandler = registerHandler; + exports.invoke = invoke; + var HANDLERS = {}; + + exports.HANDLERS = HANDLERS; + + function generateTestAsFunctionDeprecation(source) { + return 'Calling `' + source + '` with a function argument is deprecated. Please ' + 'use `!!Constructor` for constructors, or an `IIFE` to compute the test for deprecation. ' + 'In a future version functions will be treated as truthy values instead of being executed.'; + } + + function normalizeTest(test, source) { + if (_emberDebugIsPlainFunction.default(test)) { + _emberDebugDeprecate.default(generateTestAsFunctionDeprecation(source), false, { id: 'ember-debug.deprecate-test-as-function', until: '2.5.0' }); + + return test(); + } + + return test; + } + + function registerHandler(type, callback) { + var nextHandler = HANDLERS[type] || function () {}; + + HANDLERS[type] = function (message, options) { + callback(message, options, nextHandler); }; - } else { - enifed = Ember.__loader.define; - requirejs = eriuqer = requireModule = Ember.__loader.require; } -})(); -enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/assert', 'ember-metal/features', 'ember-metal/error', 'ember-metal/logger', 'ember-metal/environment', 'ember-debug/deprecate', 'ember-debug/warn', 'ember-debug/is-plain-function'], function (exports, _emberMetalCore, _emberMetalAssert, _emberMetalFeatures, _emberMetalError, _emberMetalLogger, _emberMetalEnvironment, _emberDebugDeprecate, _emberDebugWarn, _emberDebugIsPlainFunction) { + function invoke(type, message, test, options) { + if (normalizeTest(test, 'Ember.' + type)) { + return; + } + + var handlerForType = HANDLERS[type]; + + if (!handlerForType) { + return; + } + + if (handlerForType) { + handlerForType(message, options); + } + } +}); +enifed('ember-debug/is-plain-function', ['exports'], function (exports) { 'use strict'; - exports._warnIfUsingStrippedFeatureFlags = _warnIfUsingStrippedFeatureFlags; + exports.default = isPlainFunction; - _emberMetalCore.default.deprecate = _emberDebugDeprecate.default; + function isPlainFunction(test) { + return typeof test === 'function' && test.PrototypeMixin === undefined; + } +}); +enifed('ember-debug/warn', ['exports', 'ember-metal/logger', 'ember-metal/debug', 'ember-debug/handlers'], function (exports, _emberMetalLogger, _emberMetalDebug, _emberDebugHandlers) { + 'use strict'; + var _slice = Array.prototype.slice; + exports.registerHandler = registerHandler; + exports.default = warn; + + function registerHandler(handler) { + _emberDebugHandlers.registerHandler('warn', handler); + } + + registerHandler(function logWarning(message, options) { + _emberMetalLogger.default.warn('WARNING: ' + message); + if ('trace' in _emberMetalLogger.default) { + _emberMetalLogger.default.trace(); + } + }); + + var missingOptionsDeprecation = 'When calling `Ember.warn` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include an `id` property.'; + exports.missingOptionsDeprecation = missingOptionsDeprecation; + var missingOptionsIdDeprecation = 'When calling `Ember.warn` you must provide `id` in options.'; + + exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation; /** + Display a warning with the provided message. Ember build tools will + remove any calls to `Ember.warn()` when doing a production build. + + @method warn + @param {String} message A warning to display. + @param {Boolean} test An optional boolean. If falsy, the warning + will be displayed. + @public + */ + + function warn(message, test, options) { + if (!options) { + _emberMetalDebug.deprecate(missingOptionsDeprecation, false, { + id: 'ember-debug.warn-options-missing', + until: '3.0.0', + url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' + }); + } + + if (options && !options.id) { + _emberMetalDebug.deprecate(missingOptionsIdDeprecation, false, { + id: 'ember-debug.warn-id-missing', + until: '3.0.0', + url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' + }); + } + + _emberDebugHandlers.invoke.apply(undefined, ['warn'].concat(_slice.call(arguments))); + } +}); +enifed('ember-debug', ['exports', 'ember-metal/core', 'ember-metal/debug', 'ember-metal/features', 'ember-metal/error', 'ember-metal/logger', 'ember-metal/environment', 'ember-debug/deprecate', 'ember-debug/warn', 'ember-debug/is-plain-function', 'ember-debug/handlers'], function (exports, _emberMetalCore, _emberMetalDebug, _emberMetalFeatures, _emberMetalError, _emberMetalLogger, _emberMetalEnvironment, _emberDebugDeprecate, _emberDebugWarn, _emberDebugIsPlainFunction, _emberDebugHandlers) { + 'use strict'; + + exports._warnIfUsingStrippedFeatureFlags = _warnIfUsingStrippedFeatureFlags; + + /** @module ember @submodule ember-debug */ /** @@ -146,28 +362,29 @@ ``` @method assert @param {String} desc A description of the assertion. This will become the text of the Error thrown if the assertion fails. - @param {Boolean|Function} test Must be truthy for the assertion to pass. If - falsy, an exception will be thrown. If this is a function, it will be executed and - its return value will be used as condition. + @param {Boolean} test Must be truthy for the assertion to pass. If + falsy, an exception will be thrown. @public */ - function assert(desc, test) { - var throwAssertion; + _emberMetalDebug.setDebugFunction('assert', function assert(desc, test) { + var throwAssertion = undefined; if (_emberDebugIsPlainFunction.default(test)) { + _emberMetalDebug.deprecate(_emberDebugHandlers.generateTestAsFunctionDeprecation('Ember.assert'), false, { id: 'ember-debug.deprecate-test-as-function', until: '2.5.0' }); + throwAssertion = !test(); } else { throwAssertion = !test; } if (throwAssertion) { throw new _emberMetalError.default('Assertion Failed: ' + desc); } - } + }); /** Display a debug notice. Ember build tools will remove any calls to `Ember.debug()` when doing a production build. @@ -177,15 +394,25 @@ @method debug @param {String} message A debug message to display. @public */ - function debug(message) { + _emberMetalDebug.setDebugFunction('debug', function debug(message) { _emberMetalLogger.default.debug('DEBUG: ' + message); - } + }); /** + Display an info notice. + + @method info + @private + */ + _emberMetalDebug.setDebugFunction('info', function info() { + _emberMetalLogger.default.info.apply(undefined, arguments); + }); + + /** Alias an old, deprecated method with its new counterpart. Display a deprecation warning with the provided message and a stack trace (Chrome and Firefox only) when the assigned method is called. @@ -201,11 +428,11 @@ @param {Object} [options] The options object for Ember.deprecate. @param {Function} func The new function called to replace its deprecated counterpart. @return {Function} a new function that wrapped the original function with a deprecation warning @private */ - function deprecateFunc() { + _emberMetalDebug.setDebugFunction('deprecateFunc', function deprecateFunc() { for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } if (args.length === 3) { @@ -214,11 +441,11 @@ var options = args[1]; var func = args[2]; return { v: function () { - _emberMetalCore.default.deprecate(message, false, options); + _emberMetalDebug.deprecate(message, false, options); return func.apply(this, arguments); } }; })(); @@ -228,19 +455,19 @@ var message = args[0]; var func = args[1]; return { v: function () { - _emberMetalCore.default.deprecate(message); + _emberMetalDebug.deprecate(message); return func.apply(this, arguments); } }; })(); if (typeof _ret2 === 'object') return _ret2.v; } - } + }); /** Run a function meant for debugging. Ember build tools will remove any calls to `Ember.runInDebug()` when doing a production build. @@ -257,21 +484,20 @@ @method runInDebug @param {Function} func The function to be executed. @since 1.5.0 @public */ - function runInDebug(func) { + _emberMetalDebug.setDebugFunction('runInDebug', function runInDebug(func) { func(); - } + }); - _emberMetalAssert.registerDebugFunction('assert', assert); - _emberMetalAssert.registerDebugFunction('warn', _emberDebugWarn.default); - _emberMetalAssert.registerDebugFunction('debug', debug); - _emberMetalAssert.registerDebugFunction('deprecate', _emberDebugDeprecate.default); - _emberMetalAssert.registerDebugFunction('deprecateFunc', deprecateFunc); - _emberMetalAssert.registerDebugFunction('runInDebug', runInDebug); + _emberMetalDebug.setDebugFunction('debugSeal', function debugSeal(obj) { + Object.seal(obj); + }); + _emberMetalDebug.setDebugFunction('deprecate', _emberDebugDeprecate.default); + _emberMetalDebug.setDebugFunction('warn', _emberDebugWarn.default); /** Will call `Ember.warn()` if ENABLE_ALL_FEATURES, ENABLE_OPTIONAL_FEATURES, or any specific FEATURES flag is truthy. This method is called automatically in debug canary builds. @@ -281,16 +507,16 @@ @return {void} */ function _warnIfUsingStrippedFeatureFlags(FEATURES, featuresWereStripped) { if (featuresWereStripped) { - _emberMetalCore.default.warn('Ember.ENV.ENABLE_ALL_FEATURES is only available in canary builds.', !_emberMetalCore.default.ENV.ENABLE_ALL_FEATURES, { id: 'ember-debug.feature-flag-with-features-stripped' }); - _emberMetalCore.default.warn('Ember.ENV.ENABLE_OPTIONAL_FEATURES is only available in canary builds.', !_emberMetalCore.default.ENV.ENABLE_OPTIONAL_FEATURES, { id: 'ember-debug.feature-flag-with-features-stripped' }); + _emberMetalDebug.warn('Ember.ENV.ENABLE_ALL_FEATURES is only available in canary builds.', !_emberMetalCore.default.ENV.ENABLE_ALL_FEATURES, { id: 'ember-debug.feature-flag-with-features-stripped' }); + _emberMetalDebug.warn('Ember.ENV.ENABLE_OPTIONAL_FEATURES is only available in canary builds.', !_emberMetalCore.default.ENV.ENABLE_OPTIONAL_FEATURES, { id: 'ember-debug.feature-flag-with-features-stripped' }); for (var key in FEATURES) { if (FEATURES.hasOwnProperty(key) && key !== 'isEnabled') { - _emberMetalCore.default.warn('FEATURE["' + key + '"] is set as enabled, but FEATURE flags are only available in canary builds.', !FEATURES[key], { id: 'ember-debug.feature-flag-with-features-stripped' }); + _emberMetalDebug.warn('FEATURE["' + key + '"] is set as enabled, but FEATURE flags are only available in canary builds.', !FEATURES[key], { id: 'ember-debug.feature-flag-with-features-stripped' }); } } } } @@ -315,11 +541,11 @@ downloadURL = 'https://chrome.google.com/webstore/detail/ember-inspector/bmdblncegkenkacieihfhpjfppoconhi'; } else if (isFirefox) { downloadURL = 'https://addons.mozilla.org/en-US/firefox/addon/ember-inspector/'; } - _emberMetalCore.default.debug('For more advanced debugging, install the Ember Inspector from ' + downloadURL); + _emberMetalDebug.debug('For more advanced debugging, install the Ember Inspector from ' + downloadURL); } }, false); } } /** @@ -393,275 +619,13 @@ used a nice helpful warning message will be printed out. */ var runningNonEmberDebugJS = false; exports.runningNonEmberDebugJS = runningNonEmberDebugJS; if (runningNonEmberDebugJS) { - _emberMetalCore.default.warn('Please use `ember.debug.js` instead of `ember.js` for development and debugging.'); + _emberMetalDebug.warn('Please use `ember.debug.js` instead of `ember.js` for development and debugging.'); } }); -enifed('ember-debug/deprecate', ['exports', 'ember-metal/core', 'ember-metal/error', 'ember-metal/logger', 'ember-debug/handlers'], function (exports, _emberMetalCore, _emberMetalError, _emberMetalLogger, _emberDebugHandlers) { - /*global __fail__*/ - - 'use strict'; - - var _slice = Array.prototype.slice; - exports.registerHandler = registerHandler; - exports.default = deprecate; - - function registerHandler(handler) { - _emberDebugHandlers.registerHandler('deprecate', handler); - } - - function formatMessage(_message, options) { - var message = _message; - - if (options && options.id) { - message = message + (' [deprecation id: ' + options.id + ']'); - } - - if (options && options.url) { - message += ' See ' + options.url + ' for more details.'; - } - - return message; - } - - registerHandler(function logDeprecationToConsole(message, options) { - var updatedMessage = formatMessage(message, options); - - _emberMetalLogger.default.warn('DEPRECATION: ' + updatedMessage); - }); - - registerHandler(function logDeprecationStackTrace(message, options, next) { - if (_emberMetalCore.default.LOG_STACKTRACE_ON_DEPRECATION) { - var stackStr = ''; - var error = undefined, - stack = undefined; - - // When using new Error, we can't do the arguments check for Chrome. Alternatives are welcome - try { - __fail__.fail(); - } catch (e) { - error = e; - } - - if (error.stack) { - if (error['arguments']) { - // Chrome - stack = error.stack.replace(/^\s+at\s+/gm, '').replace(/^([^\(]+?)([\n$])/gm, '{anonymous}($1)$2').replace(/^Object.<anonymous>\s*\(([^\)]+)\)/gm, '{anonymous}($1)').split('\n'); - stack.shift(); - } else { - // Firefox - stack = error.stack.replace(/(?:\n@:0)?\s+$/m, '').replace(/^\(/gm, '{anonymous}(').split('\n'); - } - - stackStr = '\n ' + stack.slice(2).join('\n '); - } - - var updatedMessage = formatMessage(message, options); - - _emberMetalLogger.default.warn('DEPRECATION: ' + updatedMessage + stackStr); - } else { - next.apply(undefined, arguments); - } - }); - - registerHandler(function raiseOnDeprecation(message, options, next) { - if (_emberMetalCore.default.ENV.RAISE_ON_DEPRECATION) { - var updatedMessage = formatMessage(message); - - throw new _emberMetalError.default(updatedMessage); - } else { - next.apply(undefined, arguments); - } - }); - - var missingOptionsDeprecation = 'When calling `Ember.deprecate` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include `id` and `until` properties.'; - exports.missingOptionsDeprecation = missingOptionsDeprecation; - var missingOptionsIdDeprecation = 'When calling `Ember.deprecate` you must provide `id` in options.'; - exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation; - var missingOptionsUntilDeprecation = 'When calling `Ember.deprecate` you must provide `until` in options.'; - - exports.missingOptionsUntilDeprecation = missingOptionsUntilDeprecation; - /** - @module ember - @submodule ember-debug - */ - - /** - Display a deprecation warning with the provided message and a stack trace - (Chrome and Firefox only). Ember build tools will remove any calls to - `Ember.deprecate()` when doing a production build. - - @method deprecate - @param {String} message A description of the deprecation. - @param {Boolean|Function} test A boolean. If falsy, the deprecation - will be displayed. If this is a function, it will be executed and its return - value will be used as condition. - @param {Object} options An object that can be used to pass - in a `url` to the transition guide on the emberjs.com website, and a unique - `id` for this deprecation. The `id` can be used by Ember debugging tools - to change the behavior (raise, log or silence) for that specific deprecation. - The `id` should be namespaced by dots, e.g. "view.helper.select". - @for Ember - @public - */ - - function deprecate(message, test, options) { - if (!options || !options.id && !options.until) { - deprecate(missingOptionsDeprecation, false, { - id: 'ember-debug.deprecate-options-missing', - until: '3.0.0', - url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' - }); - } - - if (options && !options.id) { - deprecate(missingOptionsIdDeprecation, false, { - id: 'ember-debug.deprecate-id-missing', - until: '3.0.0', - url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' - }); - } - - if (options && !options.until) { - deprecate(missingOptionsUntilDeprecation, options && options.until, { - id: 'ember-debug.deprecate-until-missing', - until: '3.0.0', - url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' - }); - } - - _emberDebugHandlers.invoke.apply(undefined, ['deprecate'].concat(_slice.call(arguments))); - } -}); -enifed('ember-debug/handlers', ['exports', 'ember-debug/is-plain-function'], function (exports, _emberDebugIsPlainFunction) { - 'use strict'; - - exports.registerHandler = registerHandler; - exports.invoke = invoke; - var HANDLERS = {}; - - exports.HANDLERS = HANDLERS; - function normalizeTest(test) { - return _emberDebugIsPlainFunction.default(test) ? test() : test; - } - - function registerHandler(type, callback) { - var nextHandler = HANDLERS[type] || function () {}; - - HANDLERS[type] = function (message, options) { - callback(message, options, nextHandler); - }; - } - - function invoke(type, message, test, options) { - if (normalizeTest(test)) { - return; - } - - var handlerForType = HANDLERS[type]; - - if (!handlerForType) { - return; - } - - if (handlerForType) { - handlerForType(message, options); - } - } -}); -enifed('ember-debug/is-plain-function', ['exports'], function (exports) { - 'use strict'; - - exports.default = isPlainFunction; - - function isPlainFunction(test) { - return typeof test === 'function' && test.PrototypeMixin === undefined; - } -}); -enifed('ember-debug/warn', ['exports', 'ember-metal/core', 'ember-metal/logger', 'ember-debug/handlers'], function (exports, _emberMetalCore, _emberMetalLogger, _emberDebugHandlers) { - 'use strict'; - - var _slice = Array.prototype.slice; - exports.registerHandler = registerHandler; - exports.default = warn; - - function registerHandler(handler) { - _emberDebugHandlers.registerHandler('warn', handler); - } - - registerHandler(function logWarning(message, options) { - _emberMetalLogger.default.warn('WARNING: ' + message); - if ('trace' in _emberMetalLogger.default) { - _emberMetalLogger.default.trace(); - } - }); - - var missingOptionsDeprecation = 'When calling `Ember.warn` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include an `id` property.'; - exports.missingOptionsDeprecation = missingOptionsDeprecation; - var missingOptionsIdDeprecation = 'When calling `Ember.warn` you must provide `id` in options.'; - - exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation; - /** - @module ember - @submodule ember-debug - */ - - /** - Display a warning with the provided message. Ember build tools will - remove any calls to `Ember.warn()` when doing a production build. - - @method warn - @param {String} message A warning to display. - @param {Boolean} test An optional boolean. If falsy, the warning - will be displayed. - @param {Object} options An ojbect that can be used to pass a unique - `id` for this warning. The `id` can be used by Ember debugging tools - to change the behavior (raise, log, or silence) for that specific warning. - The `id` should be namespaced by dots, e.g. "ember-debug.feature-flag-with-features-stripped" - @for Ember - @public - */ - - function warn(message, test, options) { - if (!options) { - _emberMetalCore.default.deprecate(missingOptionsDeprecation, false, { - id: 'ember-debug.warn-options-missing', - until: '3.0.0', - url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' - }); - } - - if (options && !options.id) { - _emberMetalCore.default.deprecate(missingOptionsIdDeprecation, false, { - id: 'ember-debug.warn-id-missing', - until: '3.0.0', - url: 'http://emberjs.com/deprecations/v2.x/#toc_ember-debug-function-options' - }); - } - - _emberDebugHandlers.invoke.apply(undefined, ['warn'].concat(_slice.call(arguments))); - } -}); -enifed('ember-testing', ['exports', 'ember-metal/core', 'ember-testing/initializers', 'ember-testing/support', 'ember-testing/setup_for_testing', 'ember-testing/test', 'ember-testing/adapters/adapter', 'ember-testing/adapters/qunit', 'ember-testing/helpers'], function (exports, _emberMetalCore, _emberTestingInitializers, _emberTestingSupport, _emberTestingSetup_for_testing, _emberTestingTest, _emberTestingAdaptersAdapter, _emberTestingAdaptersQunit, _emberTestingHelpers) { - 'use strict'; - - // adds helpers to helpers object in Test - - /** - @module ember - @submodule ember-testing - */ - - _emberMetalCore.default.Test = _emberTestingTest.default; - _emberMetalCore.default.Test.Adapter = _emberTestingAdaptersAdapter.default; - _emberMetalCore.default.Test.QUnitAdapter = _emberTestingAdaptersQunit.default; - _emberMetalCore.default.setupForTesting = _emberTestingSetup_for_testing.default; -}); -// to setup initializer -// to handle various edge cases enifed('ember-testing/adapters/adapter', ['exports', 'ember-runtime/system/object'], function (exports, _emberRuntimeSystemObject) { 'use strict'; function K() { return this; @@ -740,11 +704,11 @@ exception: function (error) { ok(false, _emberMetalUtils.inspect(error)); } }); }); -enifed('ember-testing/helpers', ['exports', 'ember-metal/core', 'ember-metal/features', 'ember-metal/property_get', 'ember-metal/error', 'ember-metal/run_loop', 'ember-views/system/jquery', 'ember-testing/test', 'ember-runtime/ext/rsvp'], function (exports, _emberMetalCore, _emberMetalFeatures, _emberMetalProperty_get, _emberMetalError, _emberMetalRun_loop, _emberViewsSystemJquery, _emberTestingTest, _emberRuntimeExtRsvp) { +enifed('ember-testing/helpers', ['exports', 'ember-metal/debug', 'ember-metal/features', 'ember-metal/property_get', 'ember-metal/error', 'ember-metal/run_loop', 'ember-views/system/jquery', 'ember-testing/test', 'ember-runtime/ext/rsvp'], function (exports, _emberMetalDebug, _emberMetalFeatures, _emberMetalProperty_get, _emberMetalError, _emberMetalRun_loop, _emberViewsSystemJquery, _emberTestingTest, _emberRuntimeExtRsvp) { 'use strict'; /** @module ember @submodule ember-testing @@ -771,11 +735,11 @@ return _emberMetalProperty_get.get(router, 'location').getURL(); } function pauseTest() { _emberTestingTest.default.adapter.asyncStart(); - return new _emberMetalCore.default.RSVP.Promise(function () {}, 'TestAdapter paused promise'); + return new _emberRuntimeExtRsvp.default.Promise(function () {}, 'TestAdapter paused promise'); } function focus(el) { if (el && el.is(':input, [contenteditable=true]')) { var type = el.prop('type'); @@ -831,11 +795,11 @@ function check(app, selector, context) { var $el = app.testHelpers.findWithAssert(selector, context); var type = $el.prop('type'); - _emberMetalCore.default.assert('To check \'' + selector + '\', the input must be a checkbox', type === 'checkbox'); + _emberMetalDebug.assert('To check \'' + selector + '\', the input must be a checkbox', type === 'checkbox'); if (!$el.prop('checked')) { app.testHelpers.click(selector, context); } @@ -844,11 +808,11 @@ function uncheck(app, selector, context) { var $el = app.testHelpers.findWithAssert(selector, context); var type = $el.prop('type'); - _emberMetalCore.default.assert('To uncheck \'' + selector + '\', the input must be a checkbox', type === 'checkbox'); + _emberMetalDebug.assert('To uncheck \'' + selector + '\', the input must be a checkbox', type === 'checkbox'); if ($el.prop('checked')) { app.testHelpers.click(selector, context); } @@ -1337,11 +1301,11 @@ _emberViewsSystemJquery.default(document).on('ajaxComplete', decrementAjaxPendingRequests); } }); // import Test from "ember-testing/test"; // ES6TODO: fix when cycles are supported -enifed('ember-testing/support', ['exports', 'ember-metal/core', 'ember-views/system/jquery', 'ember-metal/environment'], function (exports, _emberMetalCore, _emberViewsSystemJquery, _emberMetalEnvironment) { +enifed('ember-testing/support', ['exports', 'ember-metal/debug', 'ember-views/system/jquery', 'ember-metal/environment'], function (exports, _emberMetalDebug, _emberViewsSystemJquery, _emberMetalEnvironment) { 'use strict'; /** @module ember @submodule ember-testing @@ -1384,16 +1348,16 @@ } }); // Try again to verify that the patch took effect or blow up. testCheckboxClick(function () { - _emberMetalCore.default.warn('clicked checkboxes should be checked! the jQuery patch didn\'t work', this.checked, { id: 'ember-testing.test-checkbox-click' }); + _emberMetalDebug.warn('clicked checkboxes should be checked! the jQuery patch didn\'t work', this.checked, { id: 'ember-testing.test-checkbox-click' }); }); }); } }); -enifed('ember-testing/test', ['exports', 'ember-metal/core', 'ember-metal/run_loop', 'ember-runtime/ext/rsvp', 'ember-testing/setup_for_testing', 'ember-application/system/application'], function (exports, _emberMetalCore, _emberMetalRun_loop, _emberRuntimeExtRsvp, _emberTestingSetup_for_testing, _emberApplicationSystemApplication) { +enifed('ember-testing/test', ['exports', 'ember-metal/run_loop', 'ember-runtime/ext/rsvp', 'ember-testing/setup_for_testing', 'ember-application/system/application', 'ember-runtime/system/native_array'], function (exports, _emberMetalRun_loop, _emberRuntimeExtRsvp, _emberTestingSetup_for_testing, _emberApplicationSystemApplication, _emberRuntimeSystemNative_array) { 'use strict'; /** @module ember @submodule ember-testing @@ -1601,11 +1565,11 @@ if (arguments.length === 1) { callback = context; context = null; } if (!this.waiters) { - this.waiters = _emberMetalCore.default.A(); + this.waiters = _emberRuntimeSystemNative_array.A(); } this.waiters.push([context, callback]); }, /** `unregisterWaiter` is used to unregister a callback that was @@ -1622,11 +1586,11 @@ } if (arguments.length === 1) { callback = context; context = null; } - this.waiters = _emberMetalCore.default.A(this.waiters.filter(function (elt) { + this.waiters = _emberRuntimeSystemNative_array.A(this.waiters.filter(function (elt) { return !(elt[0] === context && elt[1] === callback); })); } }; @@ -1880,8 +1844,25 @@ } } exports.default = Test; }); +enifed('ember-testing', ['exports', 'ember-metal/core', 'ember-testing/initializers', 'ember-testing/support', 'ember-testing/setup_for_testing', 'ember-testing/test', 'ember-testing/adapters/adapter', 'ember-testing/adapters/qunit', 'ember-testing/helpers'], function (exports, _emberMetalCore, _emberTestingInitializers, _emberTestingSupport, _emberTestingSetup_for_testing, _emberTestingTest, _emberTestingAdaptersAdapter, _emberTestingAdaptersQunit, _emberTestingHelpers) { + 'use strict'; + + // adds helpers to helpers object in Test + + /** + @module ember + @submodule ember-testing + */ + + _emberMetalCore.default.Test = _emberTestingTest.default; + _emberMetalCore.default.Test.Adapter = _emberTestingAdaptersAdapter.default; + _emberMetalCore.default.Test.QUnitAdapter = _emberTestingAdaptersQunit.default; + _emberMetalCore.default.setupForTesting = _emberTestingSetup_for_testing.default; +}); +// to setup initializer +// to handle various edge cases requireModule("ember-testing"); -})(); \ No newline at end of file +}());