diff --git a/packages/ember-htmlbars/lib/compat.js b/packages/ember-htmlbars/lib/compat.js
index 76e2d8151a6..3254b626880 100644
--- a/packages/ember-htmlbars/lib/compat.js
+++ b/packages/ember-htmlbars/lib/compat.js
@@ -1,20 +1,25 @@
import Ember from 'ember-metal/core';
-import { deprecateFunc } from 'ember-metal/debug';
+import { htmlSafe } from 'ember-htmlbars/utils/string';
+import { deprecate } from 'ember-metal/debug';
import {
- SafeString,
escapeExpression
} from 'ember-htmlbars/utils/string';
var EmberHandlebars = Ember.Handlebars = Ember.Handlebars || {};
-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.SafeString = function(value) {
+ deprecate(
+ 'Ember.Handlebars.SafeString is deprecated in favor of Ember.String.htmlSafe',
+ false,
+ {
+ 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'
+ }
+ );
+
+ return htmlSafe(value);
+};
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
index 53092b3abd1..6b27641dc9a 100644
--- a/packages/ember-htmlbars/tests/compat/safe_string_test.js
+++ b/packages/ember-htmlbars/tests/compat/safe_string_test.js
@@ -3,7 +3,11 @@ import EmberHandlebars from 'ember-htmlbars/compat';
QUnit.module('ember-htmlbars: compat - SafeString');
QUnit.test('using new results in a deprecation', function(assert) {
+ let result;
+
expectDeprecation(function() {
- new EmberHandlebars.SafeString('test');
+ result = new EmberHandlebars.SafeString('test');
}, 'Ember.Handlebars.SafeString is deprecated in favor of Ember.String.htmlSafe');
+
+ assert.equal(result.toHTML(), 'test');
});