From 185ba867f10a9765f6ae72888de5a3e2b640b0c5 Mon Sep 17 00:00:00 2001 From: "Ross A. Wollman" Date: Sun, 3 Jul 2022 10:19:13 -0700 Subject: [PATCH] fix: emit Page on load/DOMContentLoaded Fixes #1399. Ports in #1374 of https://github.com/microsoft/playwright/commit/cdb862767f408fa6d364179d449f562565b4a793 was incorrect. --- playwright/_impl/_frame.py | 4 ++-- tests/sync/test_page.py | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/playwright/_impl/_frame.py b/playwright/_impl/_frame.py index 6d20c34f0..640ef1f82 100644 --- a/playwright/_impl/_frame.py +++ b/playwright/_impl/_frame.py @@ -100,14 +100,14 @@ def _on_load_state( and hasattr(self, "_page") and self._page ): - self._page.emit("load", self) + self._page.emit("load", self._page) if ( not self._parent_frame and add == "domcontentloaded" and hasattr(self, "_page") and self._page ): - self._page.emit("domcontentloaded", self) + self._page.emit("domcontentloaded", self._page) def _on_frame_navigated(self, event: FrameNavigatedEvent) -> None: self._url = event["url"] diff --git a/tests/sync/test_page.py b/tests/sync/test_page.py index 492d535ad..ccb229196 100644 --- a/tests/sync/test_page.py +++ b/tests/sync/test_page.py @@ -76,3 +76,11 @@ def test_sync_stacks_should_work(page: Page, server: Server) -> None: page.goto(server.EMPTY_PAGE) assert exc_info.value.stack assert __file__ in exc_info.value.stack + + +def test_emitted_for_domcontentloaded_and_load(page: Page, server: Server) -> None: + with page.expect_event("domcontentloaded") as dom_info: + with page.expect_event("load") as load_info: + page.goto(server.EMPTY_PAGE) + assert isinstance(dom_info.value, Page) + assert isinstance(load_info.value, Page)