(sourceWin, targetwin, msg)
| 432 | * @return {!Promise<!Object>} |
| 433 | */ |
| 434 | export function expectPostMessage(sourceWin, targetwin, msg) { |
| 435 | return new Promise((resolve) => { |
| 436 | const listener = (event) => { |
| 437 | if ( |
| 438 | event.source == sourceWin && |
| 439 | JSON.stringify(msg) == JSON.stringify(event.data) |
| 440 | ) { |
| 441 | targetwin.removeEventListener('message', listener); |
| 442 | resolve(event.data); |
| 443 | } |
| 444 | }; |
| 445 | targetwin.addEventListener('message', listener); |
| 446 | }); |
| 447 | } |
| 448 | |
| 449 | /** |
| 450 | * Returns a promise for when the condition becomes true. |
no test coverage detected