Skip to content

Commit f5c2621

Browse files
committed
fix test
1 parent 96d2892 commit f5c2621

2 files changed

Lines changed: 42 additions & 24 deletions

File tree

ember_debug/libs/view-inspection.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,11 @@ export default class ViewInspection {
346346
} else if (this.isInspecting && event.button === 0) {
347347
event.preventDefault();
348348
event.stopPropagation();
349-
this.inspectNearest(event.target, true);
349+
let target = event.target;
350+
if (target.shadowRoot) {
351+
target = target.shadowRoot.elementFromPoint(event.x, event.y) || target;
352+
}
353+
this.inspectNearest(target, true);
350354
this.stop(false);
351355
}
352356
}

tests/ember_debug/view-debug-test.js

Lines changed: 37 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,29 @@
11
/* eslint-disable ember/no-classic-classes */
2-
import { click, find, rerender, triggerEvent, visit } from "@ember/test-helpers";
3-
import hasEmberVersion from "@ember/test-helpers/has-ember-version";
4-
import { A } from "@ember/array";
5-
import { run } from "@ember/runloop";
2+
import {
3+
click,
4+
find,
5+
rerender,
6+
triggerEvent,
7+
visit,
8+
} from '@ember/test-helpers';
9+
import hasEmberVersion from '@ember/test-helpers/has-ember-version';
10+
import { A } from '@ember/array';
11+
import { run } from '@ember/runloop';
612
// eslint-disable-next-line ember/no-classic-components
7-
import EmberComponent, { setComponentTemplate } from "@ember/component";
8-
import EmberRoute from "@ember/routing/route";
9-
import EmberObject from "@ember/object";
10-
import Controller from "@ember/controller";
13+
import EmberComponent, { setComponentTemplate } from '@ember/component';
14+
import EmberRoute from '@ember/routing/route';
15+
import EmberObject from '@ember/object';
16+
import Controller from '@ember/controller';
1117
// eslint-disable-next-line ember/no-at-ember-render-modifiers
12-
import didInsert from "@ember/render-modifiers/modifiers/did-insert";
13-
import QUnit, { module, test } from "qunit";
14-
import { hbs } from "ember-cli-htmlbars";
15-
import EmberDebug from "ember-debug/main";
16-
import setupEmberDebugTest from "../helpers/setup-ember-debug-test";
17-
import { isInVersionSpecifier } from "ember-debug/version";
18-
import { VERSION } from "ember-debug/ember";
19-
import GlimmerComponent from "@glimmer/component";
20-
import { tracked } from "@glimmer/tracking";
18+
import didInsert from '@ember/render-modifiers/modifiers/did-insert';
19+
import QUnit, { module, test } from 'qunit';
20+
import { hbs } from 'ember-cli-htmlbars';
21+
import EmberDebug from 'ember-debug/main';
22+
import setupEmberDebugTest from '../helpers/setup-ember-debug-test';
23+
import { isInVersionSpecifier } from 'ember-debug/version';
24+
import { VERSION } from 'ember-debug/ember';
25+
import GlimmerComponent from '@glimmer/component';
26+
import { tracked } from '@glimmer/tracking';
2127

2228
let templateOnlyComponent = null;
2329
try {
@@ -513,9 +519,10 @@ module('Ember Debug - View', function (hooks) {
513519
),
514520
class extends GlimmerComponent {
515521
@tracked shadow;
516-
setupRoot(element) {
522+
setupRoot = (element) => {
517523
this.shadow = element.attachShadow({ mode: 'open' });
518-
}
524+
window.testShadow = this.shadow;
525+
};
519526
},
520527
),
521528
);
@@ -658,7 +665,7 @@ module('Ember Debug - View', function (hooks) {
658665

659666
this.owner.register(
660667
'template:component-in-shadow-dom',
661-
hbs('<ShadoDom><TestFoo /></ShadoDom>', {
668+
hbs('<ShadowDom><TestFoo /></ShadowDom>', {
662669
moduleName: 'my-app/templates/component-in-shadow-dom.hbs',
663670
}),
664671
);
@@ -1230,20 +1237,27 @@ module('Ember Debug - View', function (hooks) {
12301237
});
12311238

12321239
test('component inside shadow dom', async function (assert) {
1240+
if (isInVersionSpecifier('^5.8.0', VERSION)) {
1241+
assert.expect(2);
1242+
return;
1243+
}
12331244
await visit('component-in-shadow-dom');
12341245
await rerender();
12351246
await getRenderTree();
12361247

1237-
inElement = find('.simple-component');
1248+
const inShadow = window.testShadow.querySelector('.simple-component');
12381249

1239-
await click('.simple-component');
1250+
await click(window.testShadow.host, {
1251+
clientX: inShadow.getBoundingClientRect().x,
1252+
clientY: inShadow.getBoundingClientRect().y,
1253+
});
12401254

12411255
assert
12421256
.dom('.ember-inspector-tooltip-header', tooltip)
12431257
.hasText('<TestFoo>');
12441258

12451259
let actual = highlight.getBoundingClientRect();
1246-
let expected = inElement.getBoundingClientRect();
1260+
let expected = inShadow.getBoundingClientRect();
12471261

12481262
assert.ok(isVisible(tooltip), 'tooltip is visible');
12491263
assert.ok(isVisible(highlight), 'highlight is visible');

0 commit comments

Comments
 (0)