Skip to content

Commit

Permalink
Merge pull request #11800 from martndemus/disable-legacy-view-helpers…
Browse files Browse the repository at this point in the history
…-keyword

[CLEANUP beta] Only register view keyword helper when legacy enabled
  • Loading branch information
rwjblue committed Jul 18, 2015
2 parents 3ab4857 + bc05b08 commit 408047d
Show file tree
Hide file tree
Showing 43 changed files with 341 additions and 41 deletions.
7 changes: 6 additions & 1 deletion packages/ember-htmlbars/lib/env.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import _Ember from 'ember-metal';
import isEnabled from 'ember-metal/features';
import environment from 'ember-metal/environment';

Expand Down Expand Up @@ -91,7 +92,6 @@ registerKeyword('outlet', outlet);
registerKeyword('@real_outlet', realOutlet);
registerKeyword('@customized_outlet', customizedOutlet);
registerKeyword('unbound', unbound);
registerKeyword('view', view);
registerKeyword('component', componentKeyword);
registerKeyword('partial', partial);
registerKeyword('template', templateKeyword);
Expand All @@ -103,6 +103,11 @@ registerKeyword('mut', mut);
registerKeyword('@mut', privateMut);
registerKeyword('each', each);
registerKeyword('readonly', readonly);

if (_Ember.ENV._ENABLE_LEGACY_VIEW_SUPPORT) {
registerKeyword('view', view);
}

if (isEnabled('ember-htmlbars-get-helper')) {
registerKeyword('get', getKeyword);
}
Expand Down
7 changes: 5 additions & 2 deletions packages/ember-htmlbars/lib/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,13 @@ if (isEnabled('ember-htmlbars-each-in')) {
registerHelper('-normalize-class', normalizeClassHelper);
registerHelper('concat', concatHelper);
registerHelper('-join-classes', joinClassesHelper);
registerHelper('-legacy-each-with-controller', legacyEachWithControllerHelper);
registerHelper('-legacy-each-with-keyword', legacyEachWithKeywordHelper);
registerHelper('-html-safe', htmlSafeHelper);

if (Ember.ENV._ENABLE_LEGACY_VIEW_SUPPORT) {
registerHelper('-legacy-each-with-controller', legacyEachWithControllerHelper);
registerHelper('-legacy-each-with-keyword', legacyEachWithKeywordHelper);
}

Ember.HTMLBars = {
_registerHelper: registerHelper,
template: template,
Expand Down
9 changes: 8 additions & 1 deletion packages/ember-htmlbars/tests/compat/helper_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,15 @@ import Registry from 'container/registry';
import ComponentLookup from 'ember-views/component_lookup';
import HandlebarsCompatibleHelper from 'ember-htmlbars/compat/helper';

var view, registry, container;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var view, registry, container, originalViewKeyword;

QUnit.module('ember-htmlbars: compat - Handlebars compatible helpers', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);

registry = new Registry();
container = registry.container();
registry.optionsForType('component', { singleton: false });
Expand All @@ -29,6 +34,8 @@ QUnit.module('ember-htmlbars: compat - Handlebars compatible helpers', {

delete helpers.test;
delete helpers['view-helper'];

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,15 @@ import makeViewHelper from 'ember-htmlbars/system/make-view-helper';
import Component from 'ember-views/views/component';
import { runAppend, runDestroy } from 'ember-runtime/tests/utils';

var registry, container, view;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var registry, container, view, originalViewKeyword;

QUnit.module('ember-htmlbars: compat - makeViewHelper compat', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);

registry = new Registry();
container = registry.container();
},
Expand All @@ -17,6 +22,8 @@ QUnit.module('ember-htmlbars: compat - makeViewHelper compat', {
runDestroy(container);
runDestroy(view);
registry = container = view = null;

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
9 changes: 8 additions & 1 deletion packages/ember-htmlbars/tests/compat/view_helper_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,17 @@ import Registry from 'container/registry';
import { registerAstPlugin, removeAstPlugin } from 'ember-htmlbars/tests/utils';
import DeprecateViewHelper from 'ember-template-compiler/plugins/deprecate-view-helper';

let component, registry, container;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

let component, registry, container, originalViewKeyword;

QUnit.module('ember-htmlbars: compat - view helper', {
setup() {
registerAstPlugin(DeprecateViewHelper);

originalViewKeyword = registerKeyword('view', viewKeyword);

registry = new Registry();
container = registry.container();
},
Expand All @@ -22,6 +27,8 @@ QUnit.module('ember-htmlbars: compat - view helper', {
runDestroy(container);
removeAstPlugin(DeprecateViewHelper);
registry = container = component = null;

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
10 changes: 8 additions & 2 deletions packages/ember-htmlbars/tests/helpers/collection_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,15 @@ import EmberView from 'ember-views/views/view';
import jQuery from 'ember-views/system/jquery';
import compile from 'ember-template-compiler/system/compile';

var trim = jQuery.trim;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var trim = jQuery.trim;

var view;

var originalLookup = Ember.lookup;
var TemplateTests, registry, container, lookup;
var TemplateTests, registry, container, lookup, originalViewKeyword;


function nthChild(view, nth) {
Expand All @@ -36,6 +38,8 @@ function firstGrandchild(view) {

QUnit.module('collection helper', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);

Ember.lookup = lookup = {};
lookup.TemplateTests = TemplateTests = Namespace.create();
registry = new Registry();
Expand All @@ -52,6 +56,8 @@ QUnit.module('collection helper', {

Ember.lookup = lookup = originalLookup;
TemplateTests = null;

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
7 changes: 7 additions & 0 deletions packages/ember-htmlbars/tests/helpers/each_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,12 @@ import { deprecation as eachDeprecation } from 'ember-htmlbars/helpers/each';
import { registerAstPlugin, removeAstPlugin } from 'ember-htmlbars/tests/utils';
import TransformEachIntoCollection from 'ember-template-compiler/plugins/transform-each-into-collection';

import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var people, view, registry, container;
var template, templateMyView, MyView, MyEmptyView, templateMyEmptyView;
var originalViewKeyword;

// This function lets us write {{#EACH|people|p}} {{p}} {{/each}}
// and generate:
Expand Down Expand Up @@ -88,6 +91,8 @@ QUnit.module('the #each helper [DEPRECATED]', {
setup() {
Ember.lookup = lookup = { Ember: Ember };

originalViewKeyword = registerKeyword('view', viewKeyword);

registerAstPlugin(TransformEachIntoCollection);

template = compile('{{#each view.people}}{{name}}{{/each}}');
Expand Down Expand Up @@ -130,6 +135,8 @@ QUnit.module('the #each helper [DEPRECATED]', {
Ember.lookup = originalLookup;

removeAstPlugin(TransformEachIntoCollection);

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
9 changes: 8 additions & 1 deletion packages/ember-htmlbars/tests/helpers/if_unless_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,17 @@ import { fmt } from 'ember-runtime/system/string';
import { typeOf } from 'ember-runtime/utils';
import { runAppend, runDestroy } from 'ember-runtime/tests/utils';

import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var originalLookup = Ember.lookup;

var view, lookup, registry, container, TemplateTests;
var view, lookup, registry, container, TemplateTests, originalViewKeyword;

QUnit.module('ember-htmlbars: {{#if}} and {{#unless}} helpers', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);

Ember.lookup = lookup = {};
lookup.TemplateTests = TemplateTests = Namespace.create();
registry = new Registry();
Expand All @@ -35,6 +40,8 @@ QUnit.module('ember-htmlbars: {{#if}} and {{#unless}} helpers', {

Ember.lookup = lookup = originalLookup;
TemplateTests = null;

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
9 changes: 8 additions & 1 deletion packages/ember-htmlbars/tests/helpers/view_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ import { set } from 'ember-metal/property_set';
import { get } from 'ember-metal/property_get';
import { computed } from 'ember-metal/computed';

var view, originalLookup, registry, container, lookup;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var view, originalLookup, registry, container, lookup, originalViewKeyword;

var trim = jQuery.trim;

Expand All @@ -44,6 +47,8 @@ var firstChild = nthChild;

QUnit.module('ember-htmlbars: {{#view}} helper', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);

originalLookup = Ember.lookup;
Ember.lookup = lookup = {};

Expand All @@ -60,6 +65,8 @@ QUnit.module('ember-htmlbars: {{#view}} helper', {
registry = container = view = null;

Ember.lookup = lookup = originalLookup;

resetKeyword('view', originalViewKeyword);
}
});

Expand Down
12 changes: 10 additions & 2 deletions packages/ember-htmlbars/tests/helpers/yield_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,14 @@ import makeViewHelper from 'ember-htmlbars/system/make-view-helper';
import compile from 'ember-template-compiler/system/compile';
import { runAppend, runDestroy } from 'ember-runtime/tests/utils';

var view, registry, container;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var view, registry, container, originalViewKeyword;

QUnit.module('ember-htmlbars: Support for {{yield}} helper', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
registry = new Registry();
container = registry.container();
registry.optionsForType('template', { instantiate: false });
Expand All @@ -31,6 +35,7 @@ QUnit.module('ember-htmlbars: Support for {{yield}} helper', {
runDestroy(view);
runDestroy(container);
registry = container = view = null;
resetKeyword('view', originalViewKeyword);
}
});

Expand Down Expand Up @@ -258,11 +263,14 @@ QUnit.test('nested simple bindings inside of a yielded template should work prop
});

QUnit.module('ember-htmlbars: Component {{yield}}', {
setup() {},
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
},
teardown() {
runDestroy(view);
delete helpers['inner-component'];
delete helpers['outer-component'];
resetKeyword('view', originalViewKeyword);
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,16 @@ import { registerHelper } from 'ember-htmlbars/helpers';

import { set } from 'ember-metal/property_set';

var view, MyApp, originalLookup, lookup;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var view, MyApp, originalLookup, lookup, originalViewKeyword;

var trim = jQuery.trim;

QUnit.module('ember-htmlbars: binding integration', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
originalLookup = Ember.lookup;
Ember.lookup = lookup = {};

Expand All @@ -28,6 +32,7 @@ QUnit.module('ember-htmlbars: binding integration', {
Ember.lookup = originalLookup;

runDestroy(view);
resetKeyword('view', originalViewKeyword);
view = null;

MyApp = null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,22 @@ import Controller from 'ember-runtime/controllers/controller';
import { runAppend, runDestroy } from 'ember-runtime/tests/utils';
import environment from 'ember-metal/environment';

var dispatcher, view;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var dispatcher, view, originalViewKeyword;

QUnit.module('ember-htmlbars: Ember.Select - usage inside templates', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
dispatcher = EventDispatcher.create();
dispatcher.setup();
},

teardown() {
runDestroy(dispatcher);
runDestroy(view);
resetKeyword('view', originalViewKeyword);
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,18 @@ import { runAppend, runDestroy } from 'ember-runtime/tests/utils';

import { set } from 'ember-metal/property_set';

var component;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var component, originalViewKeyword;

QUnit.module('ember-htmlbars: destroy-element-hook tests', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
},
teardown() {
runDestroy(component);
resetKeyword('view', originalViewKeyword);
}
});

Expand Down
7 changes: 6 additions & 1 deletion packages/ember-htmlbars/tests/integration/with_view_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,14 @@ import { runAppend, runDestroy } from 'ember-runtime/tests/utils';

import { set } from 'ember-metal/property_set';

var view, registry, container;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var view, registry, container, originalViewKeyword;

QUnit.module('ember-htmlbars: {{#with}} and {{#view}} integration', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
registry = new Registry();
container = registry.container();
registry.optionsForType('template', { instantiate: false });
Expand All @@ -19,6 +23,7 @@ QUnit.module('ember-htmlbars: {{#with}} and {{#view}} integration', {
teardown() {
runDestroy(container);
runDestroy(view);
resetKeyword('view', originalViewKeyword);
registry = container = view = null;
}
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,17 @@ import EmberView from 'ember-views/views/view';
import EmberComponent from 'ember-views/views/component';
import compile from 'ember-template-compiler/system/compile';

var view;
import { registerKeyword, resetKeyword } from 'ember-htmlbars/tests/utils';
import viewKeyword from 'ember-htmlbars/keywords/view';

var view, originalViewKeyword;
QUnit.module('ember-htmlbars: appendTemplatedView', {
setup() {
originalViewKeyword = registerKeyword('view', viewKeyword);
},
teardown() {
runDestroy(view);
resetKeyword('view', originalViewKeyword);
}
});

Expand Down
Loading

0 comments on commit 408047d

Please sign in to comment.