code: 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)));
    }
docs: @module ember
  @submodule ember-debug
   
  Display a warning with the provided message.
  
  In a production build, this method is defined as an empty function (NOP).
  Uses of this method in Ember itself are stripped from the ember.prod.js 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 object 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