From a05883cdafa8262d651cb6b402c078e9c9157056 Mon Sep 17 00:00:00 2001 From: Peter Feigl Date: Tue, 4 Dec 2012 15:46:21 +0100 Subject: [PATCH] [PATCH v2 4/5] Adding tests for --format=sexp. --- 10/c565f1372a988183f6dd30302d78dc595536b0 | 128 ++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 10/c565f1372a988183f6dd30302d78dc595536b0 diff --git a/10/c565f1372a988183f6dd30302d78dc595536b0 b/10/c565f1372a988183f6dd30302d78dc595536b0 new file mode 100644 index 000000000..db6fc1ada --- /dev/null +++ b/10/c565f1372a988183f6dd30302d78dc595536b0 @@ -0,0 +1,128 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id 2C2B8431FB6 + for ; Tue, 4 Dec 2012 06:46:48 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "References" +X-Spam-Flag: NO +X-Spam-Score: 0.001 +X-Spam-Level: +X-Spam-Status: No, score=0.001 tagged_above=-999 required=5 + tests=[FREEMAIL_FROM=0.001] autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id JSSgNIoPXN7w for ; + Tue, 4 Dec 2012 06:46:44 -0800 (PST) +Received: from mail.nexoid.at (www.nexoid.at [178.79.130.240]) + (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 4359A431FD8 + for ; Tue, 4 Dec 2012 06:46:42 -0800 (PST) +Received: by mail.nexoid.at (Postfix, from userid 1000) + id 4963911C10B; Tue, 4 Dec 2012 15:46:41 +0100 (CET) +From: Peter Feigl +To: notmuch@notmuchmail.org +Subject: [PATCH v2 4/5] Adding tests for --format=sexp. +Date: Tue, 4 Dec 2012 15:46:21 +0100 +Message-Id: <1354632382-15609-5-git-send-email-craven@gmx.net> +X-Mailer: git-send-email 1.8.0 +In-Reply-To: <1354632382-15609-1-git-send-email-craven@gmx.net> +References: <1354632382-15609-1-git-send-email-craven@gmx.net> +In-Reply-To: <1354264143-30173-1-git-send-email-craven@gmx.net> +References: <1354264143-30173-1-git-send-email-craven@gmx.net> +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Tue, 04 Dec 2012 14:46:48 -0000 + +Add basic tests, the same as for json, for the S-Expression output +format. +--- + test/notmuch-test | 1 + + test/sexp | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 49 insertions(+) + create mode 100755 test/sexp + +diff --git a/test/notmuch-test b/test/notmuch-test +index a6ef34f..ca9c3dc 100755 +--- a/test/notmuch-test ++++ b/test/notmuch-test +@@ -31,6 +31,7 @@ TESTS=" + excludes + tagging + json ++ sexp + text + multipart + thread-naming +diff --git a/test/sexp b/test/sexp +new file mode 100755 +index 0000000..fdc9de6 +--- /dev/null ++++ b/test/sexp +@@ -0,0 +1,48 @@ ++#!/usr/bin/env bash ++test_description="--format=sexp output" ++. ./test-lib.sh ++ ++test_begin_subtest "Show message: sexp" ++add_message "[subject]=\"sexp-show-subject\"" "[date]=\"Sat, 01 Jan 2000 12:00:00 -0000\"" "[bcc]=\"test_suite+bcc@notmuchmail.org\"" "[reply-to]=\"test_suite+replyto@notmuchmail.org\"" "[body]=\"sexp-show-message\"" ++output=$(notmuch show --format=sexp "sexp-show-message") ++test_expect_equal "$output" "(((((id \"msg-001@notmuch-test-suite\") (match t) (excluded nil) (filename \"/home/nex/notmuch-sexp/test/tmp.sexp/mail/msg-001\") (timestamp 946728000) (date_relative \"2000-01-01\") (tags (\"inbox\" \"unread\")) (headers ((Subject \"sexp-show-subject\") (From \"Notmuch Test Suite \") (To \"Notmuch Test Suite \") (Bcc \"test_suite+bcc@notmuchmail.org\") (Reply-To \"test_suite+replyto@notmuchmail.org\") (Date \"Sat, 01 Jan 2000 12:00:00 +0000\"))) (body (((id 1) (content-type \"text/plain\") (content \"sexp-show-message\n\"))))) ())))" ++ ++# This should be the same output as above. ++test_begin_subtest "Show message: sexp --body=true" ++output=$(notmuch show --format=sexp --body=true "sexp-show-message") ++test_expect_equal "$output" "(((((id \"msg-001@notmuch-test-suite\") (match t) (excluded nil) (filename \"/home/nex/notmuch-sexp/test/tmp.sexp/mail/msg-001\") (timestamp 946728000) (date_relative \"2000-01-01\") (tags (\"inbox\" \"unread\")) (headers ((Subject \"sexp-show-subject\") (From \"Notmuch Test Suite \") (To \"Notmuch Test Suite \") (Bcc \"test_suite+bcc@notmuchmail.org\") (Reply-To \"test_suite+replyto@notmuchmail.org\") (Date \"Sat, 01 Jan 2000 12:00:00 +0000\"))) (body (((id 1) (content-type \"text/plain\") (content \"sexp-show-message\n\"))))) ())))" ++ ++test_begin_subtest "Show message: sexp --body=false" ++output=$(notmuch show --format=sexp --body=false "sexp-show-message") ++test_expect_equal "$output" "(((((id \"msg-001@notmuch-test-suite\") (match t) (excluded nil) (filename \"/home/nex/notmuch-sexp/test/tmp.sexp/mail/msg-001\") (timestamp 946728000) (date_relative \"2000-01-01\") (tags (\"inbox\" \"unread\")) (headers ((Subject \"sexp-show-subject\") (From \"Notmuch Test Suite \") (To \"Notmuch Test Suite \") (Bcc \"test_suite+bcc@notmuchmail.org\") (Reply-To \"test_suite+replyto@notmuchmail.org\") (Date \"Sat, 01 Jan 2000 12:00:00 +0000\")))) ())))" ++ ++test_begin_subtest "Search message: sexp" ++add_message "[subject]=\"sexp-search-subject\"" "[date]=\"Sat, 01 Jan 2000 12:00:00 -0000\"" "[body]=\"sexp-search-message\"" ++output=$(notmuch search --format=sexp "sexp-search-message" | notmuch_search_sanitize) ++test_expect_equal "$output" "(((thread \"0000000000000002\") (timestamp 946728000) (date_relative \"2000-01-01\") (matched 1) (total 1) (authors \"Notmuch Test Suite\") (subject \"sexp-search-subject\") (tags (\"inbox\" \"unread\"))))" ++ ++test_begin_subtest "Show message: sexp, utf-8" ++add_message "[subject]=\"sexp-show-utf8-body-sübjéct\"" "[date]=\"Sat, 01 Jan 2000 12:00:00 -0000\"" "[body]=\"jsön-show-méssage\"" ++output=$(notmuch show --format=sexp "jsön-show-méssage") ++test_expect_equal "$output" "(((((id \"msg-003@notmuch-test-suite\") (match t) (excluded nil) (filename \"/home/nex/notmuch-sexp/test/tmp.sexp/mail/msg-003\") (timestamp 946728000) (date_relative \"2000-01-01\") (tags (\"inbox\" \"unread\")) (headers ((Subject \"sexp-show-utf8-body-sübjéct\") (From \"Notmuch Test Suite \") (To \"Notmuch Test Suite \") (Date \"Sat, 01 Jan 2000 12:00:00 +0000\"))) (body (((id 1) (content-type \"text/plain\") (content \"jsön-show-méssage\n\"))))) ())))" ++ ++test_begin_subtest "Show message: sexp, inline attachment filename" ++subject='sexp-show-inline-attachment-filename' ++id="sexp-show-inline-attachment-filename@notmuchmail.org" ++emacs_deliver_message \ ++ "$subject" \ ++ 'This is a test message with inline attachment with a filename' \ ++ "(mml-attach-file \"$TEST_DIRECTORY/README\" nil nil \"inline\") ++ (message-goto-eoh) ++ (insert \"Message-ID: <$id>\n\")" ++output=$(notmuch show --format=sexp "id:$id") ++filename=$(notmuch search --output=files "id:$id") ++test_expect_equal "$output" "(((((id \"sexp-show-inline-attachment-filename@notmuchmail.org\") (match t) (excluded nil) (filename \"$filename\") (timestamp 946728000) (date_relative \"2000-01-01\") (tags (\"inbox\")) (headers ((Subject \"sexp-show-inline-attachment-filename\") (From \"Notmuch Test Suite \") (To \"test_suite@notmuchmail.org\") (Date \"Sat, 01 Jan 2000 12:00:00 +0000\"))) (body (((id 1) (content-type \"multipart/mixed\") (content (((id 2) (content-type \"text/plain\") (content \"This is a test message with inline attachment with a filename\")) ((id 3) (content-type \"application/octet-stream\") (filename \"README\")))))))) ())))" ++ ++test_begin_subtest "Search message: sexp, utf-8" ++add_message "[subject]=\"sexp-search-utf8-body-sübjéct\"" "[date]=\"Sat, 01 Jan 2000 12:00:00 -0000\"" "[body]=\"jsön-search-méssage\"" ++output=$(notmuch search --format=sexp "jsön-search-méssage" | notmuch_search_sanitize) ++test_expect_equal "$output" "(((thread \"0000000000000005\") (timestamp 946728000) (date_relative \"2000-01-01\") (matched 1) (total 1) (authors \"Notmuch Test Suite\") (subject \"sexp-search-utf8-body-sübjéct\") (tags (\"inbox\" \"unread\"))))" ++ ++ ++test_done +-- +1.8.0 + -- 2.26.2