test: sanitize Date and timestamp fields in json
authorDavid Bremner <david@tethera.net>
Sun, 8 Dec 2013 08:41:34 +0000 (16:41 +0800)
committerDavid Bremner <david@tethera.net>
Mon, 9 Dec 2013 13:20:27 +0000 (21:20 +0800)
Eventually we want test messages to have distinct dates to avoid
reproducability problems. This sanitization will prevent some test
failures when that change is made.

Replace the use of a local function in maildir-sync with
notmuch_json_show_sanitize

test/maildir-sync
test/test-lib.sh

index 33d2c58541238aa4b8d521f19577242af2c35d40..3186e70f56e4c03a3eb45dc85d1fd955f8e59a89 100755 (executable)
@@ -4,11 +4,6 @@ test_description="maildir synchronization"
 
 . ./test-lib.sh
 
-# Avoid including the local value of MAIL_DIR in the result.
-filter_show_json() {
-    sed -e "s|${MAIL_DIR}/|MAIL_DIR/|"
-}
-
 # Create the expected maildir structure
 mkdir $MAIL_DIR/cur
 mkdir $MAIL_DIR/new
@@ -40,18 +35,18 @@ output=$(cd ${MAIL_DIR}/cur; ls -1 adding-replied*)
 test_expect_equal "$output" "adding-replied-tag:2,RS"
 
 test_begin_subtest "notmuch show works with renamed file (without notmuch new)"
-output=$(notmuch show --format=json id:${gen_msg_id} | filter_show_json)
-test_expect_equal_json "$output" '[[[{"id": "adding-replied-tag@notmuch-test-suite",
+output=$(notmuch show --format=json id:${gen_msg_id} | notmuch_json_show_sanitize)
+test_expect_equal_json "$output" '[[[{"id": "XXXXX",
 "match": true,
 "excluded": false,
-"filename": "MAIL_DIR/cur/adding-replied-tag:2,RS",
-"timestamp": 978709437,
+"filename": "YYYYY",
+"timestamp": 42,
 "date_relative": "2001-01-05",
 "tags": ["inbox","replied"],
 "headers": {"Subject": "Adding replied tag",
 "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
 "To": "Notmuch Test Suite <test_suite@notmuchmail.org>",
-"Date": "Fri, 05 Jan 2001 15:43:57 +0000"},
+"Date": "GENERATED_DATE"},
 "body": [{"id": 1,
 "content-type": "text/plain",
 "content": "This is just a test message (#3)\n"}]},
index 8611ba5ecefc6eddf62ae7da95d3fab39a421df8..8f18e735e5aee10262f5b5487d99e05f25ad260e 100644 (file)
@@ -625,7 +625,9 @@ notmuch_json_show_sanitize ()
 {
     sed \
        -e 's|"id": "[^"]*",|"id": "XXXXX",|g' \
-       -e 's|"filename": "/[^"]*",|"filename": "YYYYY",|g'
+       -e 's|"Date": "Fri, 05 Jan 2001 [^"]*0000"|"Date": "GENERATED_DATE"|g' \
+       -e 's|"filename": "/[^"]*",|"filename": "YYYYY",|g' \
+       -e 's|"timestamp": 97.......|"timestamp": 42|g'
 }
 
 notmuch_emacs_error_sanitize ()