From 0ced2e6c5c7dd6b1a9d9302a290844ebf5457210 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Jaworski?= Date: Mon, 3 Jun 2024 21:27:09 +0200 Subject: [PATCH] remove obsolete errors --- blebox_uniapi/error.py | 27 +--------------------- blebox_uniapi/session.py | 4 ++-- tests/test_error.py | 48 ---------------------------------------- 3 files changed, 3 insertions(+), 76 deletions(-) delete mode 100644 tests/test_error.py diff --git a/blebox_uniapi/error.py b/blebox_uniapi/error.py index 5dbca4e..08f3aa2 100644 --- a/blebox_uniapi/error.py +++ b/blebox_uniapi/error.py @@ -5,13 +5,7 @@ class Error(RuntimeError): # Likely fixable/retriable network/busy errors - - -class TemporaryError(Error): - pass - - -class ConnectionError(TemporaryError): +class ConnectionError(Error): pass @@ -20,8 +14,6 @@ class TimeoutError(ConnectionError): # Likely unfixable device errors (do not setup) - - class ClientError(Error): pass @@ -35,8 +27,6 @@ class UnauthorizedRequest(ClientError): # API errors - - class BoxError(Error): pass @@ -49,15 +39,6 @@ class UnsupportedBoxVersion(BoxError): pass -class UnsupportedAppVersion(BoxError): - pass - - -# TODO: not used yet -# class OutdatedBoxVersion(BoxError): -# pass - - class BadFieldExceedsMax(BoxError): def __init__(self, dev_name: str, field: str, value: int, max_value: int): @@ -122,12 +103,6 @@ def __str__(self) -> str: return f"{self._dev_name}.{self._field} is {self._value} which is not a rgbw string" -# API command errors - - -class BadOnValueError(BoxError): - pass - # misc errors diff --git a/blebox_uniapi/session.py b/blebox_uniapi/session.py index bc7dc5b..d7b80c2 100644 --- a/blebox_uniapi/session.py +++ b/blebox_uniapi/session.py @@ -71,12 +71,12 @@ async def async_request( except asyncio.TimeoutError as ex: raise error.TimeoutError( f"Failed to connect to {self.host}:{self.port} within {client_timeout}s: ({ex})" - ) from None + ) from ex except aiohttp.ClientConnectionError as ex: raise error.ConnectionError( f"Failed to connect to {self.host}:{self.port}: {ex}" - ) from None + ) from ex except aiohttp.ClientError as ex: raise error.ClientError(f"API request {url} failed: {ex}") from ex diff --git a/tests/test_error.py b/tests/test_error.py deleted file mode 100644 index 5de0e97..0000000 --- a/tests/test_error.py +++ /dev/null @@ -1,48 +0,0 @@ -from blebox_uniapi.error import ( - Error, - TemporaryError, - ConnectionError, - TimeoutError, - ClientError, - HttpError, - BoxError, -) - -ALL = set([Error, ConnectionError, TimeoutError, ClientError, HttpError, BoxError]) - - -def assert_is_a(subject, errors): - for error in errors: - assert issubclass(subject, error) - - remaining = ALL - set(errors) - set([subject]) - for error in remaining: - assert not issubclass(subject, error) - - -def test_error(): - assert_is_a(Error, (Error,)) - - -def test_temporary_error(): - assert_is_a(TemporaryError, (Error,)) - - -def test_connection_error(): - assert_is_a(ConnectionError, (Error, TemporaryError)) - - -def test_timeout_error(): - assert_is_a(TimeoutError, (Error, ConnectionError, TemporaryError)) - - -def test_client_error(): - assert_is_a(ClientError, (Error,)) - - -def test_http_error(): - assert_is_a(HttpError, (Error, ClientError)) - - -def test_box_error(): - assert_is_a(BoxError, (Error,))