Skip to content

Commit

Permalink
[Changed] bump playwright-core to v1.26.0
Browse files Browse the repository at this point in the history
  • Loading branch information
coreyti committed May 26, 2024
1 parent b12702c commit 1f66f9d
Show file tree
Hide file tree
Showing 5 changed files with 795 additions and 545 deletions.
30 changes: 15 additions & 15 deletions assets/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion assets/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"dependencies": {
"electron": "24.0.0",
"playwright": "1.25.0"
"playwright": "1.26.0"
}
}
10 changes: 8 additions & 2 deletions lib/playwright/browser_context.ex
Original file line number Diff line number Diff line change
Expand Up @@ -615,10 +615,16 @@ defmodule Playwright.BrowserContext do
# break
#
# ...hoping for a test to drive that out.
defp on_route(context, %{params: %{request: request} = params} = _event) do

# NOTE(20240525):
# Do not love this; See Page.on_route/2 (which is an exact copy of this) for why.
defp on_route(context, %{params: %{route: %{request: request} = route} = _params} = _event) do
Enum.reduce_while(context.routes, [], fn handler, acc ->
catalog = Playwright.Channel.Session.catalog(context.session)
request = Playwright.Channel.Catalog.get(catalog, request.guid)

if Helpers.RouteHandler.matches(handler, request.url) do
Helpers.RouteHandler.handle(handler, params)
Helpers.RouteHandler.handle(handler, %{request: request, route: route})
# break
{:halt, acc}
else
Expand Down
21 changes: 8 additions & 13 deletions lib/playwright/page.ex
Original file line number Diff line number Diff line change
Expand Up @@ -677,26 +677,21 @@ defmodule Playwright.Page do
# private
# ---------------------------------------------------------------------------

defp on_route(page, %{params: %{request: request} = params} = _event) do
# Do not love this.
# It's good enough for now (to deal with v1.26.0 changes). However, it feels
# dirty for API resource implementations to be reaching into Catalog.
defp on_route(page, %{params: %{route: %{request: request} = route} = _params} = _event) do
Enum.reduce_while(page.routes, [], fn handler, acc ->
catalog = Playwright.Channel.Session.catalog(page.session)
request = Playwright.Channel.Catalog.get(catalog, request.guid)

if Helpers.RouteHandler.matches(handler, request.url) do
Helpers.RouteHandler.handle(handler, params)
Helpers.RouteHandler.handle(handler, %{request: request, route: route})
# break
{:halt, acc}
else
{:cont, [handler | acc]}
end
end)

# task =
# Task.async(fn ->
# IO.puts("fetching context for page...")

# context(page)
# |> IO.inspect(label: "task context")
# |> BrowserContext.on_route(event)
# end)

# Task.await(task)
end
end
Loading

0 comments on commit 1f66f9d

Please sign in to comment.