python/aqmp: fix ConnectError string method

When ConnectError is used to wrap an Exception that was initialized
without an error message, we are treated to a traceback with a rubbish
line like this:

... ConnectError: Failed to establish session:

Correct this to use the name of an exception as a fallback message:

... ConnectError: Failed to establish session: EOFError

Better!

Signed-off-by: John Snow <jsnow@redhat.com>
Reported-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-id: 20211111143719.2162525-3-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
This commit is contained in:
John Snow 2021-11-11 09:37:16 -05:00
parent f26bd6ff21
commit 25de7f5012

View File

@ -79,7 +79,11 @@ class ConnectError(AQMPError):
self.exc: Exception = exc
def __str__(self) -> str:
return f"{self.error_message}: {self.exc!s}"
cause = str(self.exc)
if not cause:
# If there's no error string, use the exception name.
cause = exception_summary(self.exc)
return f"{self.error_message}: {cause}"
class StateError(AQMPError):