From 9d114a855260b3df194691c9bbf904fa08a3f0d0 Mon Sep 17 00:00:00 2001 From: Daniel Kahn Gillmor Date: Fri, 11 May 2018 02:57:58 -0400 Subject: [PATCH] test-lib: add notmuch_show_part for "notmuch show --format=text" Thanks to David Bremner for this improved readability! --- test/T357-index-decryption.sh | 10 +++++----- test/test-lib.sh | 5 +++++ 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/test/T357-index-decryption.sh b/test/T357-index-decryption.sh index 2b8e05b8..ad6c3616 100755 --- a/test/T357-index-decryption.sh +++ b/test/T357-index-decryption.sh @@ -50,7 +50,7 @@ test_expect_equal \ test_begin_subtest "show the message body of the encrypted message" notmuch dump wumpus -output=$(notmuch show wumpus | awk '/^\014part}/{ f=0 }; { if (f) { print $0 } } /^\014part{ ID: 3/{ f=1 }') +output=$(notmuch show wumpus | notmuch_show_part 3) expected='This is a test encrypted message with a wumpus.' if [ $NOTMUCH_HAVE_GMIME_SESSION_KEYS -eq 0 ]; then test_subtest_known_broken @@ -198,14 +198,14 @@ test_expect_equal \ "$expected" test_begin_subtest "show one of the messages with --decrypt=true" -output=$(notmuch show --decrypt=true thread:0000000000000001 | awk '/^\014part}/{ f=0 }; { if (f) { print $0 } } /^\014part{ ID: 3/{ f=1 }') +output=$(notmuch show --decrypt=true thread:0000000000000001 | notmuch_show_part 3) expected='This is a test encrypted message with a wumpus.' test_expect_equal \ "$output" \ "$expected" test_begin_subtest "Ensure that we cannot show the message with --decrypt=auto" -output=$(notmuch show thread:0000000000000001 | awk '/^\014part}/{ f=0 }; { if (f) { print $0 } } /^\014part{ ID: 3/{ f=1 }') +output=$(notmuch show thread:0000000000000001 | notmuch_show_part 3) expected='Non-text part: application/octet-stream' test_expect_equal \ "$output" \ @@ -256,7 +256,7 @@ test_expect_equal \ "$expected" test_begin_subtest "notmuch show should show cleartext if session key is present" -output=$(notmuch show id:simple-encrypted@crypto.notmuchmail.org | awk '/^\014part}/{ f=0 }; { if (f) { print $0 } } /^\014part{ ID: 3/{ f=1 }') +output=$(notmuch show id:simple-encrypted@crypto.notmuchmail.org | notmuch_show_part 3) expected='This is a top sekrit message.' if [ $NOTMUCH_HAVE_GMIME_SESSION_KEYS -eq 0 ]; then test_subtest_known_broken @@ -266,7 +266,7 @@ test_expect_equal \ "$expected" test_begin_subtest "notmuch show should show nothing if decryption is explicitly disallowed" -output=$(notmuch show --decrypt=false id:simple-encrypted@crypto.notmuchmail.org | awk '/^\014part}/{ f=0 }; { if (f) { print $0 } } /^\014part{ ID: 3/{ f=1 }') +output=$(notmuch show --decrypt=false id:simple-encrypted@crypto.notmuchmail.org | notmuch_show_part 3) expected='Non-text part: application/octet-stream' test_expect_equal \ "$output" \ diff --git a/test/test-lib.sh b/test/test-lib.sh index 7e064021..fca5277d 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -621,6 +621,11 @@ notmuch_config_sanitize () notmuch_dir_sanitize | notmuch_built_with_sanitize } +notmuch_show_part () +{ + awk '/^\014part}/{ f=0 }; { if (f) { print $0 } } /^\014part{ ID: '"$1"'/{ f=1 }' +} + # End of notmuch helper functions # Use test_set_prereq to tell that a particular prerequisite is available.