--- /dev/null
+Return-Path: <bgamari.foss@gmail.com>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+ by olra.theworths.org (Postfix) with ESMTP id 5BE3A429E44\r
+ for <notmuch@notmuchmail.org>; Sun, 27 Oct 2013 13:30:23 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.799\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5\r
+ tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,\r
+ FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+ by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+ with ESMTP id vghb8JEe7-1M for <notmuch@notmuchmail.org>;\r
+ Sun, 27 Oct 2013 13:30:18 -0700 (PDT)\r
+Received: from mail-qa0-f48.google.com (mail-qa0-f48.google.com\r
+ [209.85.216.48]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
+ (No client certificate requested)\r
+ by olra.theworths.org (Postfix) with ESMTPS id 31C6D431FDA\r
+ for <notmuch@notmuchmail.org>; Sun, 27 Oct 2013 13:30:18 -0700 (PDT)\r
+Received: by mail-qa0-f48.google.com with SMTP id k4so1698011qaq.14\r
+ for <notmuch@notmuchmail.org>; Sun, 27 Oct 2013 13:30:17 -0700 (PDT)\r
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;\r
+ h=from:to:cc:subject:date:message-id;\r
+ bh=AGdUOLDlmRscfTbD7v1hQxh0Ss9J0Kiu5LV2eJ7vLrU=;\r
+ b=oBVE+ZMGOjMsNUaQdA0z64LxRxxxZiI8QAeaRGKF+fZRloLUfM0Y8+iQvUpt4dHkz7\r
+ pn5TYWQtmvJiLirWtm+fFfRWjtBv+0RTUWy5EU/uJZI5fr7S2EiEmLzMyaq6MDAlZoNb\r
+ /ZSmRmjJNvQ1miRX4LIRY9hPY7js0wDnr57xRhvFwVkuTGI9yUOSdM9GQ5CUjnUiYfcE\r
+ E2WosGMssU8ePTCq+Ly7cs7KCS4ePWSiL5xQ6ENqq4iVOJiPvnUizI7Pb4EUmfkEr2xr\r
+ WFkGUtu6PQymiIeRjGWpICHkQyaStdTNFlRBcZrNcp/0BZOGtYE4iiBPsy085naeWlqL\r
+ zW4w==\r
+X-Received: by 10.49.127.179 with SMTP id nh19mr24500643qeb.1.1382905817620;\r
+ Sun, 27 Oct 2013 13:30:17 -0700 (PDT)\r
+Received: from localhost.localdomain\r
+ (pool-96-240-254-51.spfdma.east.verizon.net. [96.240.254.51])\r
+ by mx.google.com with ESMTPSA id x1sm45270525qai.6.2013.10.27.13.30.16\r
+ for <multiple recipients>\r
+ (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);\r
+ Sun, 27 Oct 2013 13:30:17 -0700 (PDT)\r
+From: Ben Gamari <bgamari.foss@gmail.com>\r
+To: notmuch@notmuchmail.org\r
+Subject: [PATCH 1/3] test: Add compact test\r
+Date: Sun, 27 Oct 2013 16:30:05 -0400\r
+Message-Id: <1382905807-22220-1-git-send-email-bgamari.foss@gmail.com>\r
+X-Mailer: git-send-email 1.8.3.2\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+ <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sun, 27 Oct 2013 20:30:23 -0000\r
+\r
+Signed-off-by: Ben Gamari <bgamari.foss@gmail.com>\r
+---\r
+ test/compact | 35 +++++++++++++++++++++++++++++++++++\r
+ test/notmuch-test | 1 +\r
+ 2 files changed, 36 insertions(+)\r
+ create mode 100755 test/compact\r
+\r
+diff --git a/test/compact b/test/compact\r
+new file mode 100755\r
+index 0000000..54e85ab\r
+--- /dev/null\r
++++ b/test/compact\r
+@@ -0,0 +1,35 @@\r
++#!/usr/bin/env bash\r
++test_description='"notmuch compact"'\r
++. ./test-lib.sh\r
++\r
++add_message '[subject]=One'\r
++add_message '[subject]=Two'\r
++add_message '[subject]=Three'\r
++\r
++notmuch tag +tag1 \*\r
++notmuch tag +tag2 subject:Two\r
++notmuch tag -tag1 +tag3 subject:Three\r
++\r
++test_begin_subtest "Compacting"\r
++notmuch compact\r
++test_expect_success "compact" "notmuch compact"\r
++\r
++notmuch search \*\r
++output=$(notmuch search \* | notmuch_search_sanitize)\r
++test_expect_equal "$output" "\\r
++thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; One (inbox tag1 unread)\r
++thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; Two (inbox tag1 tag2 unread)\r
++thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; Three (inbox tag3 unread)"\r
++\r
++test_begin_subtest "Restoring backup"\r
++rm -Rf ${TEST_TMPDIR}/mail/xapian\r
++mv ${TEST_TMPDIR}/mail/xapian.old ${TEST_TMPDIR}/mail/xapian\r
++\r
++notmuch search \*\r
++output=$(notmuch search \* | notmuch_search_sanitize)\r
++test_expect_equal "$output" "\\r
++thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; One (inbox tag1 unread)\r
++thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; Two (inbox tag1 tag2 unread)\r
++thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; Three (inbox tag3 unread)"\r
++\r
++test_done\r
+diff --git a/test/notmuch-test b/test/notmuch-test\r
+index aa28bb0..ec94baf 100755\r
+--- a/test/notmuch-test\r
++++ b/test/notmuch-test\r
+@@ -19,6 +19,7 @@ cd $(dirname "$0")\r
+ TESTS="\r
+ basic\r
+ help-test\r
++ compact\r
+ config\r
+ setup\r
+ new\r
+-- \r
+1.8.3.2\r
+\r