diff options
author | Tobias Mueller <[email protected]> | 2017-08-22 15:48:25 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2017-12-04 07:10:06 +0000 |
commit | 3cf9aedc92b6c65d2cb34037e52b9a299637d03b (patch) | |
tree | 74d13983b0093fc224af01cadadbf6749bfb0938 | |
parent | Register DCO for Tobias Mueller (diff) | |
download | gpgme-3cf9aedc92b6c65d2cb34037e52b9a299637d03b.tar.gz gpgme-3cf9aedc92b6c65d2cb34037e52b9a299637d03b.zip |
python: Default whence argument for Data() to SEEK_SET.
* lang/python/gpgme.i: copied signature from gpgme.h and defaulted the
value to SEEK_SET.
* lang/python/tests/t-data.py: Added a test for no second argument
--
Having to import the os package when wanting to read a Data object is a
slight annoyance. With SWIG, we can define default parameters. This
change defaults the whence argument to SEEK_SET which is how StringIO
and BytesIO behave.
Signed-off-by: Tobias Mueller <[email protected]>
-rw-r--r-- | lang/python/gpgme.i | 5 | ||||
-rwxr-xr-x | lang/python/tests/t-data.py | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/lang/python/gpgme.i b/lang/python/gpgme.i index 610b3d9d..492326b8 100644 --- a/lang/python/gpgme.i +++ b/lang/python/gpgme.i @@ -557,6 +557,11 @@ gpgme_error_t gpgme_op_keylist_start (gpgme_ctx_t ctx, const char *pattern="", int secret_only=0); +/* The whence argument is surprising in Python-land, + because BytesIO or StringIO objects do not require it. + It defaults to SEEK_SET. Let's do that for Data objects, too */ +off_t gpgme_data_seek (gpgme_data_t dh, off_t offset, int whence=SEEK_SET); + /* Include the unmodified <gpgme.h> for cc, and the cleaned-up local version for SWIG. We do, however, want to hide certain fields on some structs, which we provide prior to including the version for diff --git a/lang/python/tests/t-data.py b/lang/python/tests/t-data.py index 33013193..5cf074c5 100755 --- a/lang/python/tests/t-data.py +++ b/lang/python/tests/t-data.py @@ -51,6 +51,12 @@ data.write(b'Hello world!') data.seek(0, os.SEEK_SET) assert data.read() == b'Hello world!' +data = gpg.Data() +data.write(b'Hello world!') +# We expect the second argument to default to SEEK_SET +data.seek(0) +assert data.read() == b'Hello world!' + binjunk = bytes(range(256)) data = gpg.Data() data.write(binjunk) |