Skip to content

Commit adc51cd

Browse files
Frame test changes, still not working
1 parent 52bdf69 commit adc51cd

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

injected/entry-points/integration.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,8 @@ async function initCode() {
128128
async (evt) => {
129129
// @ts-expect-error https://app.asana.com/0/1201614831475344/1203979574128023/f
130130
const merged = mergeDeep(processedConfig, evt.detail);
131+
// @ts-expect-error https://app.asana.com/0/1201614831475344/1203979574128023/f
132+
window.__testContentScopeArgs = merged;
131133
// init features
132134
await init(merged);
133135

injected/integration-test/test-pages/infra/pages/conditional-matching.html

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,38 @@
7070
event.source.postMessage(navigator.deviceMemory, event.origin);
7171
}
7272
});
73+
// In automation, listen for init args and signal complete
74+
document.addEventListener('content-scope-init-args', function (evt) {
75+
// Simulate content-scope init logic, then signal complete
76+
window.parent.postMessage('content-scope-init-complete', '*');
77+
});
7378
</${scriptTag}>
7479
</body>
7580
</html>
7681
`;
7782
document.body.appendChild(frame);
7883
await new Promise(resolve => frame.onload = resolve);
84+
85+
// Send content-scope-init-args to the iframe (use parent's args if available)
86+
const args = window.__testContentScopeArgs || null;
87+
// Ensure args isn't blank here
88+
if (!args) {
89+
throw new Error('args is blank');
90+
}
91+
frame.contentWindow.document.dispatchEvent(
92+
new CustomEvent('content-scope-init-args', { detail: args })
93+
);
94+
95+
// Wait for the iframe to signal it's ready
96+
await new Promise(resolve => {
97+
window.addEventListener('message', function handler(event) {
98+
if (event.data === 'content-scope-init-complete') {
99+
window.removeEventListener('message', handler);
100+
resolve();
101+
}
102+
});
103+
});
104+
79105
const deviceMemoryPromise = new Promise(resolve => {
80106
window.addEventListener('message', (event) => {
81107
resolve(event.data);

0 commit comments

Comments
 (0)