X-Git-Url: https://git.cworth.org/git?p=notmuch;a=blobdiff_plain;f=test%2FT610-message-property.sh;h=a7cbe04842a78a20827c06d4b5d5f825cf0807c7;hp=1bc423b58bd0018a5606af149576c917c88c47fb;hb=HEAD;hpb=e191d3c574e91199e524acbf6d7199bd58fd73d5 diff --git a/test/T610-message-property.sh b/test/T610-message-property.sh index 1bc423b5..04a5d488 100755 --- a/test/T610-message-property.sh +++ b/test/T610-message-property.sh @@ -154,6 +154,16 @@ test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "notmuch_message_remove_all_properties" cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_message_remove_all_properties (message, NULL)); +EXPECT0(notmuch_database_destroy(db)); +EXPECT0(notmuch_database_open_with_config (argv[1], + NOTMUCH_DATABASE_MODE_READ_WRITE, + "", NULL, &db, &msg)); +if (msg) fputs (msg, stderr); +EXPECT0(notmuch_database_find_message(db, "4EFC743A.3060609@april.org", &message)); +if (message == NULL) { + fprintf (stderr, "unable to find message"); + exit (1); +} print_properties (message, "", FALSE); EOF cat <<'EOF' >EXPECTED @@ -163,7 +173,6 @@ EOF test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "notmuch_message_properties: multiple values" -test_subtest_known_broken cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_message_add_property (message, "testkey1", "bob")); EXPECT0(notmuch_message_add_property (message, "testkey1", "testvalue2")); @@ -180,7 +189,6 @@ EOF test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "notmuch_message_properties: prefix" -test_subtest_known_broken cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_message_add_property (message, "testkey3", "bob3")); EXPECT0(notmuch_message_add_property (message, "testkey3", "testvalue3")); @@ -235,7 +243,6 @@ EOF test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "dump message properties" -test_subtest_known_broken cat < PROPERTIES #= 4EFC743A.3060609@april.org fancy%20key%20with%20%c3%a1cc%c3%a8nts=import%20value%20with%20= testkey1=alice testkey1=bob testkey1=testvalue2 testkey3=alice3 testkey3=bob3 testkey3=testvalue3 EOF @@ -246,7 +253,6 @@ notmuch dump | grep '^#=' > OUTPUT test_expect_equal_file PROPERTIES OUTPUT test_begin_subtest "dump _only_ message properties" -test_subtest_known_broken cat < EXPECTED #notmuch-dump batch-tag:3 properties #= 4EFC743A.3060609@april.org fancy%20key%20with%20%c3%a1cc%c3%a8nts=import%20value%20with%20= testkey1=alice testkey1=bob testkey1=testvalue2 testkey3=alice3 testkey3=bob3 testkey3=testvalue3 @@ -256,7 +262,6 @@ test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "restore missing message property (single line)" -test_subtest_known_broken notmuch dump | grep '^#=' > BEFORE1 cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_message_remove_property (message, "testkey1", "bob")); @@ -267,7 +272,6 @@ test_expect_equal_file PROPERTIES OUTPUT test_begin_subtest "restore missing message property (full dump)" -test_subtest_known_broken notmuch dump > BEFORE2 cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_message_remove_property (message, "testkey1", "bob")); @@ -277,7 +281,6 @@ notmuch dump | grep '^#=' > OUTPUT test_expect_equal_file PROPERTIES OUTPUT test_begin_subtest "restore clear extra message property" -test_subtest_known_broken cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_message_add_property (message, "testkey1", "charles")); EOF @@ -296,27 +299,12 @@ id:4EFC743A.3060609@april.org EOF test_expect_equal_file EXPECTED OUTPUT -test_begin_subtest "msg.get_property (python)" +test_begin_subtest "msg.properties (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_subtest_known_broken -test_python <<'EOF' -import notmuch -db = notmuch.Database(mode=notmuch.Database.MODE.READ_ONLY) -msg = db.find_message("4EFC743A.3060609@april.org") -for (key,val) in msg.get_properties("testkey1"): +import notmuch2 +db = notmuch2.Database(mode=notmuch2.Database.MODE.READ_ONLY) +msg = db.find("4EFC743A.3060609@april.org") +for (key,val) in msg.properties.getall("testkey1"): print("{0} = {1}".format(key,val)) EOF cat <<'EOF' > EXPECTED @@ -326,13 +314,12 @@ testkey1 = testvalue2 EOF test_expect_equal_file EXPECTED OUTPUT -test_begin_subtest "msg.get_properties (python, prefix)" -test_subtest_known_broken +test_begin_subtest "msg.properties (python, prefix)" test_python <<'EOF' -import notmuch -db = notmuch.Database(mode=notmuch.Database.MODE.READ_ONLY) -msg = db.find_message("4EFC743A.3060609@april.org") -for (key,val) in msg.get_properties("testkey"): +import notmuch2 +db = notmuch2.Database(mode=notmuch2.Database.MODE.READ_ONLY) +msg = db.find("4EFC743A.3060609@april.org") +for (key,val) in msg.properties.getall("testkey"): print("{0} = {1}".format(key,val)) EOF cat <<'EOF' > EXPECTED @@ -345,16 +332,31 @@ testkey3 = testvalue3 EOF test_expect_equal_file EXPECTED OUTPUT -test_begin_subtest "msg.get_properties (python, exact)" +test_begin_subtest "msg.properties (python, exact)" test_python <<'EOF' -import notmuch -db = notmuch.Database(mode=notmuch.Database.MODE.READ_ONLY) -msg = db.find_message("4EFC743A.3060609@april.org") -for (key,val) in msg.get_properties("testkey",True): +import notmuch2 +db = notmuch2.Database(mode=notmuch2.Database.MODE.READ_ONLY) +msg = db.find("4EFC743A.3060609@april.org") +for (key,val) in msg.properties("testkey",True): print("{0} = {1}".format(key,val)) EOF test_expect_equal_file /dev/null OUTPUT +test_begin_subtest "notmuch_message_remove_all_properties_with_prefix" +cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} +EXPECT0(notmuch_message_remove_all_properties_with_prefix (message, "testkey3")); +print_properties (message, "", FALSE); +EOF +cat <<'EOF' >EXPECTED +== stdout == +fancy key with áccènts = import value with = +testkey1 = alice +testkey1 = bob +testkey1 = testvalue2 +== stderr == +EOF +test_expect_equal_file EXPECTED OUTPUT + test_begin_subtest "edit property on removed message without uncaught exception" cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR} EXPECT0(notmuch_database_remove_message (db, notmuch_message_get_filename (message)));