aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJani Nikula <jani@nikula.org>2017-02-25 15:31:32 +0200
committerDavid Bremner <david@tethera.net>2017-02-26 07:42:02 -0400
commit75bb23f74874e3820b0295d0a618045fc5f33417 (patch)
tree2c8406f5b80da22302b63edbd367c842ec55d9df
parent14c60cf168ac3b0f277188c16e6012b7ebdadde7 (diff)
test: test format version difference between v2 and v3
Schemata v3 changed message filename field to a list. Test both versions 2 and 3.
-rwxr-xr-xtest/T160-json.sh67
1 files changed, 67 insertions, 0 deletions
diff --git a/test/T160-json.sh b/test/T160-json.sh
index 099632b4..85b9b41f 100755
--- a/test/T160-json.sh
+++ b/test/T160-json.sh
@@ -70,4 +70,71 @@ test_expect_code 20 "Format version: too low" \
test_expect_code 21 "Format version: too high" \
"notmuch search --format-version=999 \\*"
+test_begin_subtest "Show message: multiple filenames"
+add_message "[id]=message-id@example.com [filename]=copy1"
+add_message "[id]=message-id@example.com [filename]=copy2"
+cat <<EOF > EXPECTED
+[
+ [
+ [
+ {
+ "date_relative": "2001-01-05",
+ "excluded": false,
+ "filename": [
+ "${MAIL_DIR}/copy1",
+ "${MAIL_DIR}/copy2"
+ ],
+ "headers": {
+ "Date": "Fri, 05 Jan 2001 15:43:52 +0000",
+ "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
+ "Subject": "Show message: multiple filenames",
+ "To": "Notmuch Test Suite <test_suite@notmuchmail.org>"
+ },
+ "id": "message-id@example.com",
+ "match": true,
+ "tags": [
+ "inbox",
+ "unread"
+ ],
+ "timestamp": 978709432
+ },
+ []
+ ]
+ ]
+]
+EOF
+output=$(notmuch show --format=json --body=false id:message-id@example.com)
+test_expect_equal_json "$output" "$(cat EXPECTED)"
+
+test_begin_subtest "Show message: multiple filenames, format version 2"
+cat <<EOF > EXPECTED
+[
+ [
+ [
+ {
+ "date_relative": "2001-01-05",
+ "excluded": false,
+ "filename": "${MAIL_DIR}/copy1",
+ "headers": {
+ "Date": "Fri, 05 Jan 2001 15:43:52 +0000",
+ "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
+ "Subject": "Show message: multiple filenames",
+ "To": "Notmuch Test Suite <test_suite@notmuchmail.org>"
+ },
+ "id": "message-id@example.com",
+ "match": true,
+ "tags": [
+ "inbox",
+ "unread"
+ ],
+ "timestamp": 978709432
+ },
+ []
+ ]
+ ]
+]
+EOF
+output=$(notmuch show --format=json --body=false --format-version=2 id:message-id@example.com)
+test_expect_equal_json "$output" "$(cat EXPECTED)"
+
test_done