diff options
| author | David Bremner <david@tethera.net> | 2021-12-05 09:02:50 -0400 |
|---|---|---|
| committer | David Bremner <david@tethera.net> | 2021-12-05 09:02:50 -0400 |
| commit | 95f0c59fe98b1404ca8a4042becf650aeb09b923 (patch) | |
| tree | 0a09e459b93a87fd2c48df0966e8241a4076a187 /bindings/python-cffi | |
| parent | c01152885c565813aa9510481e425e7c61815b56 (diff) | |
| parent | ca4e1d885b0d9dcdeb45ad6f2829f88dafc7949c (diff) | |
Merge branch 'release'
Diffstat (limited to 'bindings/python-cffi')
| -rw-r--r-- | bindings/python-cffi/notmuch2/_errors.py | 3 | ||||
| -rw-r--r-- | bindings/python-cffi/tests/test_errors.py | 8 |
2 files changed, 10 insertions, 1 deletions
diff --git a/bindings/python-cffi/notmuch2/_errors.py b/bindings/python-cffi/notmuch2/_errors.py index f55cc96b..17c3ad9c 100644 --- a/bindings/python-cffi/notmuch2/_errors.py +++ b/bindings/python-cffi/notmuch2/_errors.py @@ -83,7 +83,8 @@ class NotmuchError(Exception): if self.message: return self.message elif self.status: - return capi.lib.notmuch_status_to_string(self.status) + char_str = capi.lib.notmuch_status_to_string(self.status) + return capi.ffi.string(char_str).decode(errors='replace') else: return 'Unknown error' diff --git a/bindings/python-cffi/tests/test_errors.py b/bindings/python-cffi/tests/test_errors.py new file mode 100644 index 00000000..c2519f86 --- /dev/null +++ b/bindings/python-cffi/tests/test_errors.py @@ -0,0 +1,8 @@ +from notmuch2 import _capi as capi +from notmuch2 import _errors as errors + +def test_status_no_message(): + exc = errors.NotmuchError(capi.lib.NOTMUCH_STATUS_PATH_ERROR) + assert exc.status == capi.lib.NOTMUCH_STATUS_PATH_ERROR + assert exc.message is None + assert str(exc) == 'Path supplied is illegal for this function' |
