Ruben Pollan <meskio@sindominio.net> writes: > Message.get_property (prop) returns a string with the value of the property and > Message.get_properties (prop, exact=False) yields key, value pairs > --- > bindings/python/docs/source/message.rst | 4 ++ > bindings/python/notmuch/globals.py | 5 +++ > bindings/python/notmuch/message.py | 80 ++++++++++++++++++++++++++++++++- > 3 files changed, 88 insertions(+), 1 deletion(-) > This version passes the first test (after fixing the format, as you noted), but it looks like get_properties is returning pairs of bytestrings. FAIL [15] msg.get_properties (python) --- T610-message-property.16.EXPECTED 2018-05-02 00:02:11.160028179 +0000 +++ T610-message-property.16.OUTPUT 2018-05-02 00:02:11.164028171 +0000 @@ -1,4 +1,4 @@ -testkey1 = alice -testkey1 = bob -testkey1 = testvalue1 -testkey1 = testvalue2 +b'testkey1' = b'alice' +b'testkey1' = b'bob' +b'testkey1' = b'testvalue1' +b'testkey1' = b'testvalue2' I don't _think_ that's what we want. We had some discussion before and decided that it was reasonable to only support utf-8 properties, so converting to strings should be OK? here's the proposed tests. diff --git a/test/T610-message-property.sh b/test/T610-message-property.sh index 74b3f5a1..c903b2b6 100755 --- a/test/T610-message-property.sh +++ b/test/T610-message-property.sh @@ -256,4 +256,34 @@ id:4EFC743A.3060609@april.org EOF test_expect_equal_file EXPECTED OUTPUT +test_begin_subtest "msg.get_property (python)" +test_python <<'EOF' +import notmuch +db = notmuch.Database(mode=notmuch.Database.MODE.READ_WRITE) +msg = db.find_message("4EFC743A.3060609@april.org") +print("testkey1 = {0}".format(msg.get_property("testkey1"))) +print("testkey3 = {0}".format(msg.get_property("testkey3"))) +EOF +cat <<'EOF' > EXPECTED +testkey1 = alice +testkey3 = alice3 +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "msg.get_properties (python)" +test_python <<'EOF' +import notmuch +db = notmuch.Database(mode=notmuch.Database.MODE.READ_WRITE) +msg = db.find_message("4EFC743A.3060609@april.org") +for (key,val) in msg.get_properties("testkey1"): + print("{0} = {1}".format(key,val)) +EOF +cat <<'EOF' > EXPECTED +testkey1 = alice +testkey1 = bob +testkey1 = testvalue1 +testkey1 = testvalue2 +EOF +test_expect_equal_file EXPECTED OUTPUT + test_done _______________________________________________ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch