Skip to content

Commit 4afd41d

Browse files
authored
Merge pull request #95 from simonihmig/fix-dom-service
Fix getDOM for Ember 2.6/2.7 in integration tests
2 parents 148853e + e7271bc commit 4afd41d

File tree

4 files changed

+55
-4
lines changed

4 files changed

+55
-4
lines changed

.travis.yml

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@ env:
1212
# we recommend testing LTS's and latest stable release (bonus points to beta/canary)
1313
- EMBER_TRY_SCENARIO=ember-1.13
1414
- EMBER_TRY_SCENARIO=ember-lts-2.4
15+
- EMBER_TRY_SCENARIO=2.6
16+
- EMBER_TRY_SCENARIO=2.7
1517
- EMBER_TRY_SCENARIO=ember-lts-2.8
18+
- EMBER_TRY_SCENARIO=2.12
1619
- EMBER_TRY_SCENARIO=ember-release
1720
- EMBER_TRY_SCENARIO=ember-beta
1821
- EMBER_TRY_SCENARIO=ember-canary

addon/utils/dom.js

+7-4
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,15 @@ export function findElementById(doc, id) {
4646
// Private Ember API usage. Get the dom implementation used by the current
4747
// renderer, be it native browser DOM or Fastboot SimpleDOM
4848
export function getDOM(context) {
49-
let container = getOwner ? getOwner(context) : context.container;
50-
let documentService = container.lookup('service:-document');
49+
let { renderer } = context;
50+
if (!renderer._dom) { // pre glimmer2
51+
let container = getOwner ? getOwner(context) : context.container;
52+
let documentService = container.lookup('service:-document');
5153

52-
if (documentService) { return documentService; }
54+
if (documentService) { return documentService; }
5355

54-
let renderer = container.lookup('renderer:-dom');
56+
renderer = container.lookup('renderer:-dom');
57+
}
5558

5659
if (renderer._dom && renderer._dom.document) { // pre Ember 2.6
5760
return renderer._dom.document;

config/ember-try.js

+24
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,18 @@ module.exports = {
2323
}
2424
}
2525
},
26+
{
27+
name: '2.6',
28+
dependencies: {
29+
'ember': '~2.6.0'
30+
}
31+
},
32+
{
33+
name: '2.7',
34+
dependencies: {
35+
'ember': '~2.7.0'
36+
}
37+
},
2638
{
2739
name: 'ember-lts-2.8',
2840
bower: {
@@ -39,6 +51,18 @@ module.exports = {
3951
}
4052
}
4153
},
54+
{
55+
name: '2.12',
56+
dependencies: {
57+
'ember': '~2.12.0'
58+
}
59+
},
60+
{
61+
name: '2.12',
62+
dependencies: {
63+
'ember': '~2.12.0'
64+
}
65+
},
4266
{
4367
name: 'ember-release',
4468
bower: {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { moduleForComponent, test } from 'ember-qunit';
2+
import hbs from 'htmlbars-inline-precompile';
3+
4+
moduleForComponent('ember-wormhole', 'Integration | Component | ember wormhole', {
5+
integration: true
6+
});
7+
8+
test('it renders', function(assert) {
9+
// Set any properties with this.set('myProperty', 'value');
10+
// Handle any actions with this.on('myAction', function(val) { ... });
11+
12+
// Template block usage:
13+
this.render(hbs`
14+
<div id="wormhole"></div>
15+
{{#ember-wormhole to="wormhole"}}
16+
template block text
17+
{{/ember-wormhole}}
18+
`);
19+
20+
assert.equal(this.$('#wormhole').text().trim(), 'template block text');
21+
});

0 commit comments

Comments
 (0)