|
1 | | -import type { ReadyEvent } from "../../shared/src/interfaces/test-runner"; |
2 | 1 | import type { |
3 | 2 | InitEvent, |
4 | 3 | TestEvent, |
@@ -123,28 +122,15 @@ ${opts.source}`; |
123 | 122 | document.body.appendChild(this.#testEvaluator); |
124 | 123 | await isReady; |
125 | 124 |
|
126 | | - const isInitialized = new Promise((resolve) => { |
127 | | - const listener = (event: ReadyEvent) => { |
128 | | - if ( |
129 | | - event.origin === "null" && |
130 | | - event.source === this.#testEvaluator.contentWindow && |
131 | | - event.data.type === "ready" |
132 | | - ) { |
133 | | - window.removeEventListener("message", listener); |
134 | | - resolve(true); |
135 | | - } |
136 | | - }; |
137 | | - |
138 | | - window.addEventListener("message", listener); |
139 | | - }); |
140 | | - |
141 | 125 | const msg: InitEvent<InitTestFrameOptions>["data"] = { |
142 | 126 | type: "init", |
143 | 127 | value: opts, |
144 | 128 | }; |
145 | | - this.#testEvaluator.contentWindow?.postMessage(msg, "*"); |
146 | 129 |
|
147 | | - await isInitialized; |
| 130 | + await post({ |
| 131 | + messenger: this.#testEvaluator.contentWindow!, |
| 132 | + message: msg, |
| 133 | + }); |
148 | 134 | } |
149 | 135 |
|
150 | 136 | runTest(test: string) { |
@@ -208,23 +194,14 @@ export class WorkerTestRunner implements Runner { |
208 | 194 |
|
209 | 195 | async init(opts: InitWorkerOptions) { |
210 | 196 | this.#opts = opts; |
211 | | - const isInitialized = new Promise((resolve) => { |
212 | | - const listener = (event: ReadyEvent) => { |
213 | | - if (event.data.type === "ready") { |
214 | | - this.#testEvaluator.removeEventListener("message", listener); |
215 | | - resolve(true); |
216 | | - } |
217 | | - }; |
218 | | - |
219 | | - this.#testEvaluator.addEventListener("message", listener); |
220 | | - }); |
221 | | - |
222 | 197 | const msg: InitEvent<InitWorkerOptions>["data"] = { |
223 | 198 | type: "init", |
224 | 199 | value: opts, |
225 | 200 | }; |
226 | | - this.#testEvaluator.postMessage(msg); |
227 | | - await isInitialized; |
| 201 | + await post({ |
| 202 | + messenger: this.#testEvaluator, |
| 203 | + message: msg, |
| 204 | + }); |
228 | 205 | } |
229 | 206 |
|
230 | 207 | async #recreateRunner() { |
|
0 commit comments