diff --git a/packages/ember-glimmer/tests/integration/components/curly-components-test.js b/packages/ember-glimmer/tests/integration/components/curly-components-test.js index 021358e2bf6..e07ae83c4f0 100644 --- a/packages/ember-glimmer/tests/integration/components/curly-components-test.js +++ b/packages/ember-glimmer/tests/integration/components/curly-components-test.js @@ -413,6 +413,31 @@ moduleFor('Components test: curly components', class extends RenderingTest { assert.equal($span.attr('class'), 'inner'); } + ['@test a void element does not have childNodes'](assert) { + let fooBarInstance; + let FooBarComponent = Component.extend({ + tagName: 'input', + init() { + this._super(); + fooBarInstance = this; + } + }); + + this.registerComponent('foo-bar', { ComponentClass: FooBarComponent, template: '' }); + + this.render('{{foo-bar}}'); + + this.assertComponentElement(this.firstChild, { tagName: 'input', attrs: { 'class': classes('ember-view') } } ); + + assert.strictEqual(fooBarInstance.element.childNodes.length, 0); + + this.runTask(() => this.rerender()); + + this.assertComponentElement(this.firstChild, { tagName: 'input', attrs: { 'class': classes('ember-view') } } ); + + assert.strictEqual(fooBarInstance.element.childNodes.length, 0); + } + ['@test it has the right parentView and childViews'](assert) { let fooBarInstance, fooBarBazInstance; diff --git a/packages/ember-htmlbars/tests/integration/void-element-component-test.js b/packages/ember-htmlbars/tests/integration/void-element-component-test.js deleted file mode 100644 index b7f4fe81458..00000000000 --- a/packages/ember-htmlbars/tests/integration/void-element-component-test.js +++ /dev/null @@ -1,52 +0,0 @@ -import EmberView from 'ember-views/views/view'; -import compile from 'ember-template-compiler/system/compile'; -import { runAppend, runDestroy } from 'ember-runtime/tests/utils'; -import ComponentLookup from 'ember-views/component_lookup'; -import Component from 'ember-views/components/component'; -import buildOwner from 'container/tests/test-helpers/build-owner'; -import { OWNER } from 'container/owner'; - -var owner, view; - -import isEnabled from 'ember-metal/features'; -if (!isEnabled('ember-glimmer')) { - // jscs:disable - -QUnit.module('ember-htmlbars: components for void elements', { - setup() { - owner = buildOwner(); - owner.registerOptionsForType('component', { singleton: false }); - owner.registerOptionsForType('view', { singleton: false }); - owner.registerOptionsForType('template', { instantiate: false }); - owner.register('component-lookup:main', ComponentLookup); - }, - - teardown() { - runDestroy(owner); - runDestroy(view); - owner = view = null; - } -}); - -QUnit.test('a void element does not have childNodes', function() { - var component; - owner.register('component:x-foo', Component.extend({ - tagName: 'input', - - init() { - this._super(...arguments); - component = this; - } - })); - - view = EmberView.create({ - [OWNER]: owner, - template: compile('{{x-foo}}') - }); - - runAppend(view); - - deepEqual(component.element.childNodes.length, 0, 'no childNodes are added for ``'); -}); - -}