Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -594,6 +594,39 @@
expect: '<div data-one="">3</div><div data-two="">3</div>',
});
}

'@test rendering multiple times to adjacent elements'() {
let aHelper = (str: string) => str.toUpperCase();
let Child = defComponent(`Hi: {{aHelper "there"}}`, { scope: { aHelper } });
let get = (id: string) => this.element.querySelector(id);
function render(Comp: GlimmerishComponent, id: string, owner: Owner) {
renderComponent(Comp, {
into: get(`#${id}`)!,
owner,
});
}
let A = defComponent('a:<Child />', { scope: { Child } });
let B = defComponent('b:<Child />', { scope: { Child } });
let Root = defComponent(
[
`<div id="a"></div><br>`,
`<div id="b"></div>`,
`{{render A 'a' owner}}`,
`{{render B 'b' owner}}`,
].join('\n'),
{ scope: { render, A, B, owner: this.owner } }
);

this.renderComponent(Root, {
expect: [`<div id="a">a:Hi: THERE</div><br>`, `<div id="b">b:Hi: THERE</div>`, ``, ``].join(
'\n'
),
});

run(() => destroy(this));

assertHTML('');
}
}
);

Expand Down Expand Up @@ -622,6 +655,39 @@
this.renderComponent(Root, { expect: '' });
}, /but that value was not in scope: a-helper/);
}

'@test rendering multiple times to adjacent elements'(assert: Assert) {

Check failure on line 659 in packages/@ember/-internals/glimmer/tests/integration/components/render-component-test.ts

View workflow job for this annotation

GitHub Actions / tests / Type Checking (current version)

'assert' is declared but its value is never read.

Check failure on line 659 in packages/@ember/-internals/glimmer/tests/integration/components/render-component-test.ts

View workflow job for this annotation

GitHub Actions / tests / Linting

'assert' is defined but never used. Allowed unused args must match /^_/u
this.owner.register('helper:a-helper', (str: string) => str.toUpperCase());
let Loose = defineComponent(null, `Hi: {{a-helper "there"}}`);
let get = (id) => this.element.querySelector(id);

Check failure on line 662 in packages/@ember/-internals/glimmer/tests/integration/components/render-component-test.ts

View workflow job for this annotation

GitHub Actions / tests / Type Checking (current version)

Parameter 'id' implicitly has an 'any' type.
function render(Comp: GlimmerishComponent, id: string, owner: Owner) {
renderComponent(Comp, {
into: get(`#${id}`),
owner,
});
}
let A = defComponent('a:<Loose />', { scope: { Loose } });
let B = defComponent('b:<Loose />', { scope: { Loose } });
let Root = defComponent(
[
`<div id="a"></div><br>`,
`<div id="b"></div>`,
`{{render A 'a' owner}}`,
`{{render B 'b' owner}}`,
].join('\n'),
{ scope: { render, A, B, owner: this.owner } }
);

this.renderComponent(Root, {
expect: [`<div id="a">a:Hi: THERE</div><br>`, `<div id="b">b:Hi: THERE</div>`, ``, ``].join(
'\n'
),
});

run(() => destroy(this));

assertHTML('');
}
}
);

Expand Down
Loading