From d9a1313ae8f5c36634013d835cc25d2fe1895ba5 Mon Sep 17 00:00:00 2001 From: Corey Innis Date: Tue, 8 Oct 2024 19:22:23 -0700 Subject: [PATCH] API: add placeholder tests for `Browser.on/3` However, the function is not yet implemented. A single event is supported in Playwright proper: `disconnected`. And, the event is meant to be emitted from the client-side, upon `Browser.close/1`; we don't yet have a good mechanism for that. Also, some cleanup. --- lib/playwright/browser.ex | 5 +++-- lib/playwright/cdp_session.ex | 2 +- lib/playwright/sdk/channel/event.ex | 24 ------------------------ 3 files changed, 4 insertions(+), 27 deletions(-) diff --git a/lib/playwright/browser.ex b/lib/playwright/browser.ex index 5a703e73..35e7df0d 100644 --- a/lib/playwright/browser.ex +++ b/lib/playwright/browser.ex @@ -482,6 +482,9 @@ defmodule Playwright.Browser do """ @type worker_settings :: String.t() + @typedoc "Options for tracing API." + @type opts_tracing :: map() + # callbacks # --------------------------------------------------------------------------- @@ -725,8 +728,6 @@ defmodule Playwright.Browser do # --- - @type opts_tracing :: map() - @spec start_tracing(t(), Page.t(), opts_tracing()) :: t() | {:error, Error.t()} def start_tracing(browser, page \\ nil, options \\ %{}) diff --git a/lib/playwright/cdp_session.ex b/lib/playwright/cdp_session.ex index 7994171f..4ee23a31 100644 --- a/lib/playwright/cdp_session.ex +++ b/lib/playwright/cdp_session.ex @@ -50,7 +50,7 @@ defmodule Playwright.CDPSession do # private # --------------------------------------------------------------------------- - def handle_event(session, %{params: %{method: method, params: params}}) do + defp handle_event(session, %{params: %{method: method, params: params}}) do event = %{ params: params, target: session diff --git a/lib/playwright/sdk/channel/event.ex b/lib/playwright/sdk/channel/event.ex index f40cd379..fd1272b5 100644 --- a/lib/playwright/sdk/channel/event.ex +++ b/lib/playwright/sdk/channel/event.ex @@ -56,27 +56,3 @@ defmodule Playwright.SDK.Channel.Event do end) end end - -# defp module_for(%{__struct__: module}) do -# module -# end - -# defp prepare(%{newDocument: %{request: request}} = params, type, catalog) when type in ["navigated"] do -# document = %{request: Channel.Catalog.get(catalog, request.guid)} -# Map.put(params, :newDocument, document) -# end - -# defp prepare(params, type, catalog) when type in ["page"] do -# page = Channel.Catalog.get(catalog, params.page.guid) -# frame = Channel.Catalog.get(catalog, page.main_frame.guid) - -# Map.merge(params, %{ -# page: page, -# url: frame.url -# }) -# end - -# defp prepare(params, type, _catalog) do -# Logger.debug("Event.prepare/3 not implemented for type: #{inspect(type)} w/ params: #{inspect(params)}") -# params -# end