diff --git a/packages/ember-htmlbars/lib/compat.js b/packages/ember-htmlbars/lib/compat.js index 0d794f30b3c..76e2d8151a6 100644 --- a/packages/ember-htmlbars/lib/compat.js +++ b/packages/ember-htmlbars/lib/compat.js @@ -1,4 +1,5 @@ import Ember from 'ember-metal/core'; +import { deprecateFunc } from 'ember-metal/debug'; import { SafeString, escapeExpression @@ -6,7 +7,15 @@ import { var EmberHandlebars = Ember.Handlebars = Ember.Handlebars || {}; -EmberHandlebars.SafeString = SafeString; +EmberHandlebars.SafeString = deprecateFunc( + 'Ember.Handlebars.SafeString is deprecated in favor of Ember.String.htmlSafe', + { + id: 'ember-htmlbars.ember-handlebars-safestring', + until: '3.0.0', + url: 'http://emberjs.com/deprecations/v2.x#toc_use-ember-string-htmlsafe-over-ember-handlebars-safestring' + }, + SafeString); + EmberHandlebars.Utils = { escapeExpression: escapeExpression }; diff --git a/packages/ember-htmlbars/tests/compat/safe_string_test.js b/packages/ember-htmlbars/tests/compat/safe_string_test.js new file mode 100644 index 00000000000..53092b3abd1 --- /dev/null +++ b/packages/ember-htmlbars/tests/compat/safe_string_test.js @@ -0,0 +1,9 @@ +import EmberHandlebars from 'ember-htmlbars/compat'; + +QUnit.module('ember-htmlbars: compat - SafeString'); + +QUnit.test('using new results in a deprecation', function(assert) { + expectDeprecation(function() { + new EmberHandlebars.SafeString('test'); + }, 'Ember.Handlebars.SafeString is deprecated in favor of Ember.String.htmlSafe'); +});