Skip to content

Commit 85c86d1

Browse files
authored
Merge pull request #30 from scivisum/bug/RD-37283_startDateTime_sometimes_a_string
Bug/rd 37283 start date time sometimes a string
2 parents 9c2a7c8 + 6e4ef4e commit 85c86d1

File tree

4 files changed

+21
-4
lines changed

4 files changed

+21
-4
lines changed

browserdebuggertools/exceptions.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,7 @@ class MaxRetriesException(DevToolsException):
4848

4949
class UnknownError(ProtocolError):
5050
pass
51+
52+
53+
class InvalidParametersError(ProtocolError):
54+
pass

browserdebuggertools/sockethandler.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
from browserdebuggertools.exceptions import (
1616
DevToolsException, ResultNotFoundError, TabNotFoundError, MaxRetriesException,
1717
DevToolsTimeoutException, DomainNotEnabledError,
18-
MethodNotFoundError, UnknownError, ResourceNotFoundError, TimerException
18+
MethodNotFoundError, UnknownError, ResourceNotFoundError, TimerException,
19+
InvalidParametersError
1920
)
2021

2122

@@ -239,6 +240,8 @@ def execute(self, domain_name, method_name, params=None):
239240
raise ResourceNotFoundError(message)
240241
if code == -32601:
241242
raise MethodNotFoundError(message)
243+
if code == -32602:
244+
raise InvalidParametersError(message)
242245
raise UnknownError("DevTools Protocol error code %s: %s" % (code, message))
243246
return result
244247

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
setup(
1414
name="browserdebuggertools",
15-
version="5.3.0",
15+
version="5.4.0rc1",
1616
packages=PACKAGES,
1717
install_requires=requires,
1818
license="GNU General Public License v3",

tests/unittests/test_sockethandler.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
from browserdebuggertools.exceptions import (
88
DevToolsException, ResultNotFoundError, TabNotFoundError,
9-
DomainNotEnabledError, DevToolsTimeoutException, MethodNotFoundError
9+
DomainNotEnabledError, DevToolsTimeoutException, MethodNotFoundError, InvalidParametersError
1010
)
1111
from browserdebuggertools.sockethandler import SocketHandler
1212

@@ -229,7 +229,7 @@ def test_no_result(self):
229229
@patch(MODULE_PATH + "websocket.send", MagicMock())
230230
class Test_SocketHandler_execute(SocketHandlerTest):
231231

232-
def test(self):
232+
def test_ok(self):
233233

234234
domain = "Page"
235235
method = "navigate"
@@ -246,6 +246,16 @@ def test(self):
246246
"method": "%s.%s" % (domain, method), "params": {}
247247
})
248248

249+
@patch(MODULE_PATH + "SocketHandler._execute", new=MagicMock())
250+
def test_error(self):
251+
252+
self.socket_handler._wait_for_result = MagicMock(
253+
return_value={"error": {"code": -32602, "message": "Invalid interceptionId"}}
254+
)
255+
256+
with self.assertRaises(InvalidParametersError):
257+
self.socket_handler.execute(MagicMock(), MagicMock(), None)
258+
249259

250260
class Test_SocketHandler_add_domain(SocketHandlerTest):
251261

0 commit comments

Comments
 (0)