[PATCH 18/22] CLI/insert: support split database and mail root

2021-03-14 Thread David Bremner
The new test is in T055-path-config because it uses the helper
function split_config, and because it seems easier to put the
database path related tests in one place.
---
 notmuch-insert.c | 12 +++-
 test/T055-path-config.sh | 10 ++
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/notmuch-insert.c b/notmuch-insert.c
index cc5aeefc..865b6b69 100644
--- a/notmuch-insert.c
+++ b/notmuch-insert.c
@@ -449,7 +449,7 @@ notmuch_insert_command (unused(notmuch_config_t *config), 
notmuch_database_t *no
 {
 notmuch_status_t status, close_status;
 struct sigaction action;
-const char *db_path;
+const char *mail_root;
 notmuch_config_values_t *new_tags = NULL;
 tag_op_list_t *tag_ops;
 char *query_string = NULL;
@@ -481,13 +481,7 @@ notmuch_insert_command (unused(notmuch_config_t *config), 
notmuch_database_t *no
 
 notmuch_process_shared_options (argv[0]);
 
-
-db_path = notmuch_config_get (notmuch, NOTMUCH_CONFIG_DATABASE_PATH);
-
-if (! db_path)
-   INTERNAL_ERROR ("Unable to retrieve database path");
-else
-   db_path = talloc_strdup (local, db_path);
+mail_root = notmuch_config_get (notmuch, NOTMUCH_CONFIG_MAIL_ROOT);
 
 new_tags = notmuch_config_get_values (notmuch, NOTMUCH_CONFIG_NEW_TAGS);
 
@@ -533,7 +527,7 @@ notmuch_insert_command (unused(notmuch_config_t *config), 
notmuch_database_t *no
return EXIT_FAILURE;
 }
 
-maildir = talloc_asprintf (local, "%s/%s", db_path, folder);
+maildir = talloc_asprintf (local, "%s/%s", mail_root, folder);
 if (! maildir) {
fprintf (stderr, "Out of memory\n");
return EXIT_FAILURE;
diff --git a/test/T055-path-config.sh b/test/T055-path-config.sh
index f9a8e200..fb5174ac 100755
--- a/test/T055-path-config.sh
+++ b/test/T055-path-config.sh
@@ -167,6 +167,16 @@ On Tue, 05 Jan 2010 15:43:56 -, Sender 
 wrote:
 > basic reply test
 EOF
 test_expect_equal_file EXPECTED OUTPUT
+test_begin_subtest "insert+search ($config)"
+generate_message \
+   "[subject]=\"insert-subject\"" \
+   "[date]=\"Sat, 01 Jan 2000 12:00:00 -\"" \
+   "[body]=\"insert-message\""
+mkdir -p "$MAIL_DIR"/{cur,new,tmp}
+notmuch insert < "$gen_msg_filename"
+cur_msg_filename=$(notmuch search --output=files "subject:insert-subject")
+test_expect_equal_file "$cur_msg_filename" "$gen_msg_filename"
+
 restore_config
 done
 
-- 
2.30.1
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


[PATCH 18/22] CLI/insert: support split database and mail root

2021-03-07 Thread David Bremner
The new test is in T055-path-config because it uses the helper
function split_config, and because it seems easier to follow the
database path related tests in one place.
---
 notmuch-insert.c | 12 +++-
 test/T055-path-config.sh | 10 ++
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/notmuch-insert.c b/notmuch-insert.c
index 00505552..940e8228 100644
--- a/notmuch-insert.c
+++ b/notmuch-insert.c
@@ -448,7 +448,7 @@ notmuch_insert_command (unused(notmuch_config_t *config), 
notmuch_database_t *no
 {
 notmuch_status_t status, close_status;
 struct sigaction action;
-const char *db_path;
+const char *mail_root;
 notmuch_config_values_t *new_tags = NULL;
 tag_op_list_t *tag_ops;
 char *query_string = NULL;
@@ -480,13 +480,7 @@ notmuch_insert_command (unused(notmuch_config_t *config), 
notmuch_database_t *no
 
 notmuch_process_shared_options (argv[0]);
 
-
-db_path = notmuch_config_get (notmuch, NOTMUCH_CONFIG_DATABASE_PATH);
-
-if (! db_path)
-   INTERNAL_ERROR ("Unable to retrieve database path");
-else
-   db_path = talloc_strdup (local, db_path);
+mail_root = notmuch_config_get (notmuch, NOTMUCH_CONFIG_MAIL_ROOT);
 
 new_tags = notmuch_config_get_values (notmuch, NOTMUCH_CONFIG_NEW_TAGS);
 
@@ -532,7 +526,7 @@ notmuch_insert_command (unused(notmuch_config_t *config), 
notmuch_database_t *no
return EXIT_FAILURE;
 }
 
-maildir = talloc_asprintf (local, "%s/%s", db_path, folder);
+maildir = talloc_asprintf (local, "%s/%s", mail_root, folder);
 if (! maildir) {
fprintf (stderr, "Out of memory\n");
return EXIT_FAILURE;
diff --git a/test/T055-path-config.sh b/test/T055-path-config.sh
index f9a8e200..fb5174ac 100755
--- a/test/T055-path-config.sh
+++ b/test/T055-path-config.sh
@@ -167,6 +167,16 @@ On Tue, 05 Jan 2010 15:43:56 -, Sender 
 wrote:
 > basic reply test
 EOF
 test_expect_equal_file EXPECTED OUTPUT
+test_begin_subtest "insert+search ($config)"
+generate_message \
+   "[subject]=\"insert-subject\"" \
+   "[date]=\"Sat, 01 Jan 2000 12:00:00 -\"" \
+   "[body]=\"insert-message\""
+mkdir -p "$MAIL_DIR"/{cur,new,tmp}
+notmuch insert < "$gen_msg_filename"
+cur_msg_filename=$(notmuch search --output=files "subject:insert-subject")
+test_expect_equal_file "$cur_msg_filename" "$gen_msg_filename"
+
 restore_config
 done
 
-- 
2.30.1
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


[PATCH 18/22] CLI/insert: support split database and mail root

2021-03-04 Thread David Bremner
The new test is in T055-path-config because it uses the helper
function split_config, and because it seems easier to follow the
database path related tests in one place.
---
 notmuch-insert.c | 12 +++-
 test/T055-path-config.sh | 10 ++
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/notmuch-insert.c b/notmuch-insert.c
index 0f272e2e..38a0dfe6 100644
--- a/notmuch-insert.c
+++ b/notmuch-insert.c
@@ -448,7 +448,7 @@ notmuch_insert_command (unused(notmuch_config_t 
*config),notmuch_database_t *not
 {
 notmuch_status_t status, close_status;
 struct sigaction action;
-const char *db_path;
+const char *mail_root;
 notmuch_config_values_t *new_tags = NULL;
 tag_op_list_t *tag_ops;
 char *query_string = NULL;
@@ -480,13 +480,7 @@ notmuch_insert_command (unused(notmuch_config_t 
*config),notmuch_database_t *not
 
 notmuch_process_shared_options (argv[0]);
 
-
-db_path = notmuch_config_get (notmuch, NOTMUCH_CONFIG_DATABASE_PATH);
-
-if (! db_path)
-   INTERNAL_ERROR ("Unable to retrieve database path");
-else
-   db_path = talloc_strdup (local, db_path);
+mail_root = notmuch_config_get (notmuch, NOTMUCH_CONFIG_MAIL_ROOT);
 
 new_tags = notmuch_config_get_values (notmuch, NOTMUCH_CONFIG_NEW_TAGS);
 
@@ -532,7 +526,7 @@ notmuch_insert_command (unused(notmuch_config_t 
*config),notmuch_database_t *not
return EXIT_FAILURE;
 }
 
-maildir = talloc_asprintf (local, "%s/%s", db_path, folder);
+maildir = talloc_asprintf (local, "%s/%s", mail_root, folder);
 if (! maildir) {
fprintf (stderr, "Out of memory\n");
return EXIT_FAILURE;
diff --git a/test/T055-path-config.sh b/test/T055-path-config.sh
index f9a8e200..fb5174ac 100755
--- a/test/T055-path-config.sh
+++ b/test/T055-path-config.sh
@@ -167,6 +167,16 @@ On Tue, 05 Jan 2010 15:43:56 -, Sender 
 wrote:
 > basic reply test
 EOF
 test_expect_equal_file EXPECTED OUTPUT
+test_begin_subtest "insert+search ($config)"
+generate_message \
+   "[subject]=\"insert-subject\"" \
+   "[date]=\"Sat, 01 Jan 2000 12:00:00 -\"" \
+   "[body]=\"insert-message\""
+mkdir -p "$MAIL_DIR"/{cur,new,tmp}
+notmuch insert < "$gen_msg_filename"
+cur_msg_filename=$(notmuch search --output=files "subject:insert-subject")
+test_expect_equal_file "$cur_msg_filename" "$gen_msg_filename"
+
 restore_config
 done
 
-- 
2.30.1
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org