From 6afc31f2eddcc0110d7cc5088dc74eaf499dfcad Mon Sep 17 00:00:00 2001 From: david Date: Sun, 25 Nov 2012 17:20:06 +2000 Subject: [PATCH] [Patch v2 06/17] test: add broken roundtrip test --- ee/3086b238dcd86d47bd9c4fd889b3e639ed0b98 | 89 +++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 ee/3086b238dcd86d47bd9c4fd889b3e639ed0b98 diff --git a/ee/3086b238dcd86d47bd9c4fd889b3e639ed0b98 b/ee/3086b238dcd86d47bd9c4fd889b3e639ed0b98 new file mode 100644 index 000000000..25f67a752 --- /dev/null +++ b/ee/3086b238dcd86d47bd9c4fd889b3e639ed0b98 @@ -0,0 +1,89 @@ +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 ECCC8431FAF + for ; Sat, 24 Nov 2012 13:20:34 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: 0 +X-Spam-Level: +X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none] + 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 JUiyFZ5Jpjzv for ; + Sat, 24 Nov 2012 13:20:34 -0800 (PST) +Received: from tesseract.cs.unb.ca (tesseract.cs.unb.ca [131.202.240.238]) + (using TLSv1 with cipher AES256-SHA (256/256 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id A30DC431FBD + for ; Sat, 24 Nov 2012 13:20:32 -0800 (PST) +Received: from fctnnbsc30w-156034089108.dhcp-dynamic.fibreop.nb.bellaliant.net + ([156.34.89.108] helo=zancas.localnet) + by tesseract.cs.unb.ca with esmtpsa + (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72) + (envelope-from ) + id 1TcN9L-0006SM-T8; Sat, 24 Nov 2012 17:20:32 -0400 +Received: from bremner by zancas.localnet with local (Exim 4.80) + (envelope-from ) + id 1TcN9G-0008Co-EI; Sat, 24 Nov 2012 17:20:26 -0400 +From: david@tethera.net +To: notmuch@notmuchmail.org +Subject: [Patch v2 06/17] test: add broken roundtrip test +Date: Sat, 24 Nov 2012 17:20:06 -0400 +Message-Id: <1353792017-31459-7-git-send-email-david@tethera.net> +X-Mailer: git-send-email 1.7.10.4 +In-Reply-To: <1353792017-31459-1-git-send-email-david@tethera.net> +References: <1353792017-31459-1-git-send-email-david@tethera.net> +X-Spam_bar: - +Cc: David Bremner +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: Sat, 24 Nov 2012 21:20:35 -0000 + +From: David Bremner + +We demonstrate the current notmuch restore parser being confused by +message-id's and tags containing non alpha numeric characters +(particularly space and parentheses are problematic because they are +not escaped by notmuch dump). + +We save the files as hex escaped on disk so that the output from the +failing test will not confuse the terminal emulator of people running +the test. +--- + test/dump-restore | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/test/dump-restore b/test/dump-restore +index b05399c..a2204fb 100755 +--- a/test/dump-restore ++++ b/test/dump-restore +@@ -85,4 +85,13 @@ test_begin_subtest "dump --output=outfile -- from:cworth" + notmuch dump --output=dump-outfile-dash-inbox.actual -- from:cworth + test_expect_equal_file dump-cworth.expected dump-outfile-dash-inbox.actual + ++test_expect_success 'roundtripping random message-ids and tags' \ ++ 'test_subtest_known_broken && ++ ${TEST_DIRECTORY}/random-corpus --num-messages=10 --config-path=${NOTMUCH_CONFIG} && ++ notmuch dump | ${TEST_DIRECTORY}/hex-xcode --direction=encode > EXPECTED.$test_count && ++ notmuch tag -random-corpus tag:random-corpus && ++ ${TEST_DIRECTORY}/hex-xcode --direction=decode < EXPECTED.$test_count | notmuch restore 2>/dev/null && ++ notmuch dump | ${TEST_DIRECTORY}/hex-xcode --direction=encode > OUTPUT.$test_count && ++ test_cmp EXPECTED.$test_count OUTPUT.$test_count' ++ + test_done +-- +1.7.10.4 + -- 2.26.2