Skip to content

Commit 6925170

Browse files
committed
Take connection as parameter
1 parent 9ca885c commit 6925170

File tree

3 files changed

+18
-19
lines changed

3 files changed

+18
-19
lines changed

py/selenium/webdriver/common/bidi/network.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -498,12 +498,12 @@ def __init__(self, conn):
498498
self.callbacks = {}
499499

500500
async def add_intercept(self, event, params: AddInterceptParameters):
501-
await self.bidi.execute(session_subscribe(event.event_class))
502-
result = await self.bidi.execute(AddIntercept(params).cmd())
501+
await self.conn.execute(session_subscribe(event.event_class))
502+
result = await self.conn.execute(AddIntercept(params).cmd())
503503
return result
504504

505505
async def add_listener(self, event, callback):
506-
listener = self.bidi.listen(event)
506+
listener = self.conn.listen(event)
507507

508508
async for event in listener:
509509
request_data = BeforeRequestSentParameters.from_json(
@@ -512,5 +512,5 @@ async def add_listener(self, event, callback):
512512
await callback(request_data)
513513

514514
async def continue_request(self, params: ContinueRequestParameters):
515-
result = await self.bidi.execute(ContinueRequest(params).cmd())
515+
result = await self.conn.execute(ContinueRequest(params).cmd())
516516
return result

py/selenium/webdriver/remote/network.py

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from dataclasses import fields
22

33
from selenium.webdriver.common.bidi import network
4-
from selenium.webdriver.common.bidi.cdp import open_cdp
54
from selenium.webdriver.common.bidi.network import (
65
AddInterceptParameters,
76
BeforeRequestSent,
@@ -15,20 +14,20 @@ def default_request_handler(params: BeforeRequestSentParameters):
1514

1615

1716
class Network:
18-
def __init__(self, ws_url):
19-
self.ws_url = ws_url
17+
def __init__(self, driver):
2018
self.network = None
21-
22-
async def add_request_handler(self, request_filter=lambda _: True, handler=default_request_handler):
23-
async with open_cdp(self.ws_url) as conn:
24-
if not self.network:
25-
self.network = network.Network(conn)
26-
params = AddInterceptParameters(["beforeRequestSent"])
27-
result = await self.network.add_intercept(event=BeforeRequestSent, params=params)
28-
intercept = result["intercept"]
29-
callback = self._callback(request_filter, handler)
30-
await self.network.add_listener(BeforeRequestSent, callback)
31-
return intercept
19+
self.driver = driver
20+
self.intercept = None
21+
22+
async def add_request_handler(self, request_filter=lambda _: True, handler=default_request_handler, conn=None):
23+
self.network = network.Network(conn)
24+
params = AddInterceptParameters(["beforeRequestSent"])
25+
callback = self._callback(request_filter, handler)
26+
result = await self.network.add_intercept(event=BeforeRequestSent, params=params)
27+
intercept = result["intercept"]
28+
self.intercept = intercept
29+
await self.network.add_listener(event=BeforeRequestSent, callback=callback)
30+
return intercept
3231

3332
def _callback(self, request_filter, handler):
3433
async def callback(request):

py/selenium/webdriver/remote/webdriver.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1085,7 +1085,7 @@ def script(self):
10851085
@property
10861086
def network(self):
10871087
if not self._network:
1088-
self._network = Network(self.caps.get("webSocketUrl"))
1088+
self._network = Network(self)
10891089

10901090
return self._network
10911091

0 commit comments

Comments
 (0)