unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Jani Nikula <jani@nikula.org>
To: David Bremner <david@tethera.net>, notmuch@notmuchmail.org
Subject: Re: [PATCH] test: remove --root option and fix TMP_DIRECTORY cleanup
Date: Sat, 21 Oct 2017 15:02:44 +0300	[thread overview]
Message-ID: <871slwyahn.fsf@nikula.org> (raw)
In-Reply-To: <20171021115802.31197-1-jani@nikula.org>

On Sat, 21 Oct 2017, Jani Nikula <jani@nikula.org> wrote:
> The primary motivation here is to fix TMP_DIRECTORY cleanup prior to
> running each test when the current working directory is not the test
> subdirectory. Tests with failures would leave their TMP_DIRECTORY
> directory behind for debugging, and repeated out-of-tree test runs
> would have old temp directories. (This lead to e.g. T310-emacs.sh
> hanging because emacs would prompt for overwriting files.)

To clarify, plain 'make test' no longer has its CWD in the test
subdirectory either, leading to the same problem as out-of-tree runs
here.

The problem noticed by David could also be reproduced by running
'test/T310-emacs.sh; test/T310-emacs.sh' but not 'cd test;
./T310-emacs.sh; ./T310-emacs.sh'.

BR,
Jani.

>
> We remove the likely anyway defunct --root test option while at it,
> just to be on the safe side when doing 'rm -rf' on the TMP_DIRECTORY.
> ---
>  test/README             | 9 ---------
>  test/test-lib-common.sh | 8 ++------
>  test/test-lib.sh        | 3 ---
>  3 files changed, 2 insertions(+), 18 deletions(-)
>
> diff --git a/test/README b/test/README
> index 8e06f44241a6..b378c3ff3c5f 100644
> --- a/test/README
> +++ b/test/README
> @@ -80,15 +80,6 @@ The following command-line options are available when running tests:
>  	As the names depend on the tests' file names, it is safe to
>  	run the tests with this option in parallel.
>  
> ---root=<dir>::
> -	This runs the testsuites specified under a separate directory.
> -	However, caution is advised, as not all tests are maintained
> -	with this relocation in mind, so some tests may behave
> -	differently.
> -
> -	Pointing this argument at a tmpfs filesystem can improve the
> -	speed of the test suite for some users.
> -
>  Certain tests require precomputed databases to complete. You can fetch these
>  databases with
>  
> diff --git a/test/test-lib-common.sh b/test/test-lib-common.sh
> index 5e53348a9438..4300eb65418f 100644
> --- a/test/test-lib-common.sh
> +++ b/test/test-lib-common.sh
> @@ -307,13 +307,9 @@ export PATH MANPATH
>  
>  # Test repository
>  test="tmp.$(basename "$0" .sh)"
> -test -n "$root" && test="$root/$test"
> -case "$test" in
> -/*) TMP_DIRECTORY="$test" ;;
> - *) TMP_DIRECTORY="$TEST_DIRECTORY/$test" ;;
> -esac
> +TMP_DIRECTORY="$TEST_DIRECTORY/$test"
>  test ! -z "$debug" || remove_tmp=$TMP_DIRECTORY
> -rm -fr "$test" || {
> +rm -rf "$TMP_DIRECTORY" || {
>  	GIT_EXIT_OK=t
>  	echo >&6 "FATAL: Cannot prepare test area"
>  	exit 1
> diff --git a/test/test-lib.sh b/test/test-lib.sh
> index 4619c327dd02..7926d2787710 100644
> --- a/test/test-lib.sh
> +++ b/test/test-lib.sh
> @@ -160,9 +160,6 @@ do
>  		valgrind=t; verbose=t; shift ;;
>  	--tee)
>  		shift ;; # was handled already
> -	--root=*)
> -		root=$(expr "z$1" : 'z[^=]*=\(.*\)')
> -		shift ;;
>  	*)
>  		echo "error: unknown test option '$1'" >&2; exit 1 ;;
>  	esac
> -- 
> 2.11.0

  reply	other threads:[~2017-10-21 12:02 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-25 20:38 [PATCH 00/24] test: separate source and build directories Jani Nikula
2017-09-25 20:38 ` [PATCH 01/24] test: use corpora/default not corpus in T480-hex-escaping.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 02/24] build: use NOTMUCH_SRCDIR for referencing notmuch-test Jani Nikula
2017-09-25 20:38 ` [PATCH 03/24] test: use $(dirname "$0") for sourcing test-lib.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 04/24] perf-test: use $(dirname "$0") for sourcing perf-test-lib.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 05/24] test: check for notmuch binary in test-lib.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 06/24] test: add a script to figure out source and build directories Jani Nikula
2017-09-25 20:38 ` [PATCH 07/24] test: use source and build paths in test-lib.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 08/24] perf-test: use source and build paths in perf-test-lib.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 09/24] test: use source and build paths in test-lib-common.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 10/24] test: mkdir and cd to $TMP_DIRECTORY instead of $test for testing Jani Nikula
2017-09-25 20:38 ` [PATCH 11/24] test: use source and build paths in notmuch-test Jani Nikula
2017-09-25 20:38 ` [PATCH 12/24] test: use source and build paths in T000-basic.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 13/24] test: use source and build paths in T160-json.sh and T170-sexp.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 14/24] test: use source and build paths in T260-thread-order.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 15/24] test: use source and build paths in T310-emacs.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 16/24] test: use source and build paths in T350-crypto.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 17/24] test: use source and build paths in T355-smime.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 18/24] test: use source and build paths in T360-symbol-hiding.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 19/24] test: use source and build paths in T380-atomicity.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 20/24] test: use source and build paths in T4?0-emacs-*.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 21/24] test: use source and build paths in T480-hex-escaping.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 22/24] test: use source and build paths in T590-thread-breakage.sh Jani Nikula
2017-09-25 20:38 ` [PATCH 23/24] build: don't copy the test directory for out-of-tree builds Jani Nikula
2017-09-25 20:38 ` [PATCH 24/24] devel: add script to test " Jani Nikula
2017-09-26  5:28   ` Tomi Ollila
2017-09-26  5:32     ` Tomi Ollila
2017-10-21  2:33 ` [PATCH 00/24] test: separate source and build directories David Bremner
2017-10-21 11:58   ` [PATCH] test: remove --root option and fix TMP_DIRECTORY cleanup Jani Nikula
2017-10-21 12:02     ` Jani Nikula [this message]
2017-10-21 15:02     ` David Bremner
2017-10-21 19:21       ` [PATCH v2] test: use source path in add_gnupg_home Jani Nikula
2017-10-21 19:31       ` [PATCH] test: remove --root option and fix TMP_DIRECTORY cleanup Jani Nikula
2017-10-21 19:53         ` [PATCH] NEWS: test suite out-of-tree builds Jani Nikula
2017-10-22 14:07           ` David Bremner
2017-10-21 20:44         ` [PATCH] test: remove --root option and fix TMP_DIRECTORY cleanup 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=871slwyahn.fsf@nikula.org \
    --to=jani@nikula.org \
    --cc=david@tethera.net \
    --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).