unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: "Rollins, Jameson" <jrollins@caltech.edu>
To: Notmuch Mail <notmuch@notmuchmail.org>
Subject: [PATCH 2/3] tests: remove entangling corpus index optimization
Date: Sat, 4 May 2019 20:57:43 +0000	[thread overview]
Message-ID: <20190504205738.21504-3-jrollins@caltech.edu> (raw)
In-Reply-To: <20190504205738.21504-2-jrollins@caltech.edu>

From: Jameson Graef Rollins <jrollins@finestructure.net>

The add_email_corpus test utility includes logic that tries to re-use
an index of the corpus if available.  This was seemingly done as an
optimization, so that every test that uses the corpus didn't have to
create it's own index of the corpus.  However, this has the perverse
side effect of entangling tests together, and breaks parallelization.

Forcing each test to do it's own index does increase the overall time
of the test slightly (~6%), but this will be more than made up for in
the next patch that introduces paraellization.
---
 test/.gitignore     |  1 -
 test/Makefile.local |  2 +-
 test/notmuch-test   |  2 +-
 test/test-lib.sh    | 10 ++--------
 4 files changed, 4 insertions(+), 11 deletions(-)

diff --git a/test/.gitignore b/test/.gitignore
index 69080e5e..f5968404 100644
--- a/test/.gitignore
+++ b/test/.gitignore
@@ -1,5 +1,4 @@
 /arg-test
-/corpora.mail
 /hex-xcode
 /parse-time
 /random-corpus
diff --git a/test/Makefile.local b/test/Makefile.local
index 1cf09778..47244e8f 100644
--- a/test/Makefile.local
+++ b/test/Makefile.local
@@ -81,4 +81,4 @@ check: test
 SRCS := $(SRCS) $(test_srcs)
 CLEAN += $(TEST_BINARIES) $(addsuffix .o,$(TEST_BINARIES)) \
 	 $(dir)/database-test.o \
-	 $(dir)/corpora.mail $(dir)/test-results $(dir)/tmp.*
+	 $(dir)/test-results $(dir)/tmp.*
diff --git a/test/notmuch-test b/test/notmuch-test
index ca68dd41..1a1ae811 100755
--- a/test/notmuch-test
+++ b/test/notmuch-test
@@ -59,6 +59,6 @@ $NOTMUCH_SRCDIR/test/aggregate-results.sh $NOTMUCH_BUILDDIR/test/test-results/*
 ev=$?
 
 # Clean up
-rm -rf $NOTMUCH_BUILDDIR/test/test-results $NOTMUCH_BUILDDIR/test/corpora.mail
+rm -rf $NOTMUCH_BUILDDIR/test/test-results
 
 exit $ev
diff --git a/test/test-lib.sh b/test/test-lib.sh
index 04d93f7d..43339902 100644
--- a/test/test-lib.sh
+++ b/test/test-lib.sh
@@ -394,14 +394,8 @@ add_email_corpus ()
     corpus=${1:-default}
 
     rm -rf ${MAIL_DIR}
-    if [ -d $TEST_DIRECTORY/corpora.mail/$corpus ]; then
-	cp -a $TEST_DIRECTORY/corpora.mail/$corpus ${MAIL_DIR}
-    else
-	cp -a $NOTMUCH_SRCDIR/test/corpora/$corpus ${MAIL_DIR}
-	notmuch new >/dev/null || die "'notmuch new' failed while adding email corpus"
-	mkdir -p $TEST_DIRECTORY/corpora.mail
-	cp -a ${MAIL_DIR} $TEST_DIRECTORY/corpora.mail/$corpus
-    fi
+    cp -a $NOTMUCH_SRCDIR/test/corpora/$corpus ${MAIL_DIR}
+    notmuch new >/dev/null || die "'notmuch new' failed while adding email corpus"
 }
 
 test_begin_subtest ()
-- 
2.20.1


  reply	other threads:[~2019-05-04 20:57 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-04 20:57 parallelize test suite Rollins, Jameson
2019-05-04 20:57 ` [PATCH 1/3] tests: remove some redundant pre-cleanup of the corpus MAIL_DIR Rollins, Jameson
2019-05-04 20:57   ` Rollins, Jameson [this message]
2019-05-04 20:57     ` [PATCH 3/3] tests: run all tests in parallel, if available Rollins, Jameson
2019-05-06  4:44       ` [PATCH] tests: environment variable to specify that tests should be serialized Rollins, Jameson
2019-05-06 10:32         ` [PATCH] test: add configurable port to smtp-dummy David Bremner
2019-05-06 19:39           ` Tomi Ollila
2019-05-06 20:55             ` Daniel Kahn Gillmor
2019-05-07 10:20             ` [PATCH] test: let the OS choose a port for smtp-dummy David Bremner
2019-05-07 12:38               ` Daniel Kahn Gillmor
2019-05-08 15:59                 ` Tomi Ollila
2019-05-10 10:16               ` David Bremner
2019-05-06 19:15         ` [PATCH] tests: environment variable to specify that tests should be serialized Tomi Ollila
2019-05-06 20:58           ` Daniel Kahn Gillmor
2019-05-05 10:22   ` [PATCH 1/3] tests: remove some redundant pre-cleanup of the corpus MAIL_DIR Tomi Ollila
2019-05-04 21:33 ` parallelize test suite Rollins, Jameson
2019-05-04 21:39 ` Daniel Kahn Gillmor
2019-05-04 22:53   ` David Bremner
2019-05-05 15:22     ` Daniel Kahn Gillmor
2019-05-05 16:44       ` Tomi Ollila
2019-05-06 21:39         ` Daniel Kahn Gillmor
2019-05-07 10:26 ` David Bremner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://notmuchmail.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190504205738.21504-3-jrollins@caltech.edu \
    --to=jrollins@caltech.edu \
    --cc=notmuch@notmuchmail.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).