]> git.notmuchmail.org Git - notmuch/commitdiff
lib: Add known broken test for string_map binary search.
authorDavid Bremner <david@tethera.net>
Tue, 5 Mar 2019 18:56:29 +0000 (14:56 -0400)
committerDavid Bremner <david@tethera.net>
Wed, 6 Mar 2019 01:46:41 +0000 (21:46 -0400)
Because the string_map functions are not exported, we test via message
properties.

test/T610-message-property.sh

index 0abef82433d7742cc84577c9836ff7b528d7599d..04f0c9be967af5e2e07e2ad89415b1584158d15e 100755 (executable)
@@ -100,6 +100,42 @@ cat <<'EOF' >EXPECTED
 EOF
 test_expect_equal_file EXPECTED OUTPUT
 
+test_begin_subtest "testing string map binary search (via message properties)"
+test_subtest_known_broken
+cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
+{
+   char *keys[] = {"a", "b", "c", "d", "e", NULL};
+   for (int i=0; keys[i]; i++)
+       EXPECT0(notmuch_message_add_property (message, keys[i], keys[i]));
+
+   for (int i=0; keys[i]; i++) {
+      EXPECT0(notmuch_message_get_property (message, keys[i], &val));
+      printf("%s = %s\n", keys[i], val);
+   }
+
+   for (int i=0; keys[i]; i++) {
+      EXPECT0(notmuch_message_remove_property (message, keys[i], keys[i]));
+      EXPECT0(notmuch_message_get_property (message, keys[i], &val));
+      printf("%s = %s\n", keys[i], val == NULL ? "NULL" : val);
+   }
+}
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+a = a
+b = b
+c = c
+d = d
+e = e
+a = NULL
+b = NULL
+c = NULL
+d = NULL
+e = NULL
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
 test_begin_subtest "notmuch_message_get_properties: empty list"
 cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
 {