threads / patch / 49707

patchtest-lib: introduce the '-V' short option for '--verbose-log'

Subject: [PATCH] test-lib: introduce the '-V' short option for '--verbose-log'

## tl;dr

4 messages between Oct 29, 2018 and Oct 29, 2018. Diffs are folded; open one to read it.

replies: 3people: 2as markdown or json

SZEDER Gábor· Oct 29, 2018, 12:13 UTC · lore

'--verbose-log' is one of the most useful and thus most frequently used test options, but due to its length it's a pain to type on the command line.

Let's introduce the corresponding short option '-V' to save some keystrokes.

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
---

Or it could be '-L', to emphasize the "log" part of the long option, I don't really care.

 t/README      | 1 +
 t/test-lib.sh | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)
Show changes to 2 files +3 −2

t/README, t/test-lib.sh

diff --git a/t/README b/t/README
index 8847489640..2e9bef2852 100644
--- a/t/README
+++ b/t/README
@@ -154,6 +154,7 @@ appropriately before running "make".
 	As the names depend on the tests' file names, it is safe to
 	run the tests with this option in parallel.
 
+-V::
 --verbose-log::
 	Write verbose output to the same logfile as `--tee`, but do
 	_not_ write it to stdout. Unlike `--tee --verbose`, this option
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 897e6fcc94..47a99aa0ed 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -67,7 +67,7 @@ case "$GIT_TEST_TEE_STARTED, $* " in
 done,*)
 	# do not redirect again
 	;;
-*' --tee '*|*' --va'*|*' --verbose-log '*)
+*' --tee '*|*' --va'*|*' -V '*|*' --verbose-log '*)
 	mkdir -p "$TEST_OUTPUT_DIRECTORY/test-results"
 	BASE="$TEST_OUTPUT_DIRECTORY/test-results/$(basename "$0" .sh)"
 
@@ -316,7 +316,7 @@ do
 			echo >&2 "warning: ignoring -x; '$0' is untraceable without BASH_XTRACEFD"
 		fi
 		shift ;;
-	--verbose-log)
+	-V|--verbose-log)
 		verbose_log=t
 		shift ;;
 	*)
-- 
2.19.1.723.g6817e59acc
Jeff King· Oct 29, 2018, 14:21 UTC · re: SZEDER Gábor · lore

Re: [PATCH] test-lib: introduce the '-V' short option for '--verbose-log'

On Mon, Oct 29, 2018 at 01:13:59PM +0100, SZEDER Gábor wrote:
Show 6 quoted lines
> '--verbose-log' is one of the most useful and thus most frequently
> used test options, but due to its length it's a pain to type on the
> command line.
> 
> Let's introduce the corresponding short option '-V' to save some
> keystrokes.

Interesting. I'm not opposed to something like this, but I added "--verbose-log" specifically for scripted cases, like running an unattended "prove" that needs to preserve stdout. When running individual tests, I'd just use "-v" itself, and possibly redirect the output.

For my curiosity, can you describe your use case a bit more?
>  t/README      | 1 +
>  t/test-lib.sh | 4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
The patch itself looks good to me.
-Peff
SZEDER Gábor· Oct 29, 2018, 13:53 UTC · re: Jeff King · lore

Re: [PATCH] test-lib: introduce the '-V' short option for '--verbose-log'

On Mon, Oct 29, 2018 at 10:21:08AM -0400, Jeff King wrote:
Show 16 quoted lines
> On Mon, Oct 29, 2018 at 01:13:59PM +0100, SZEDER Gábor wrote:
> 
> > '--verbose-log' is one of the most useful and thus most frequently
> > used test options, but due to its length it's a pain to type on the
> > command line.
> > 
> > Let's introduce the corresponding short option '-V' to save some
> > keystrokes.
> 
> Interesting. I'm not opposed to something like this, but I added
> "--verbose-log" specifically for scripted cases, like running an
> unattended "prove" that needs to preserve stdout. When running
> individual tests, I'd just use "-v" itself, and possibly redirect the
> output.
> 
> For my curiosity, can you describe your use case a bit more?

Even when I run individual test scripts by hand, I prefer to have a file catching all output of the test, because I don't like it when the test output floods my terminal (especially with '-x'), and because the file is searchable but the terminal isn't. And that's exactly what '--verbose-log' does.

Redirecting the '-v' output (i.e. stdout) alone is insufficient, because any error messages within the tests and the '-x' trace go to stderr, so they still end up on the terminal. Therefore I would have to remember to redirect stderr every time as well.

I find it's much easier to just always use '--verbose-log'... except for the length of the option, that is, hence this patch.

Jeff King· Oct 29, 2018, 15:42 UTC · re: SZEDER Gábor · lore

Re: [PATCH] test-lib: introduce the '-V' short option for '--verbose-log'

On Mon, Oct 29, 2018 at 02:53:35PM +0100, SZEDER Gábor wrote:
Show 21 quoted lines
> > Interesting. I'm not opposed to something like this, but I added
> > "--verbose-log" specifically for scripted cases, like running an
> > unattended "prove" that needs to preserve stdout. When running
> > individual tests, I'd just use "-v" itself, and possibly redirect the
> > output.
> > 
> > For my curiosity, can you describe your use case a bit more?
> 
> Even when I run individual test scripts by hand, I prefer to have a
> file catching all output of the test, because I don't like it when the
> test output floods my terminal (especially with '-x'), and because the
> file is searchable but the terminal isn't.  And that's exactly what
> '--verbose-log' does.
> 
> Redirecting the '-v' output (i.e. stdout) alone is insufficient,
> because any error messages within the tests and the '-x' trace go to
> stderr, so they still end up on the terminal.  Therefore I would have
> to remember to redirect stderr every time as well.
> 
> I find it's much easier to just always use '--verbose-log'... except
> for the length of the option, that is, hence this patch.
OK, fair enough. Maybe I should start using "-V" too, then. ;)

(I find myself most often coupling "-v" with "-i" to stop at the failure and just read what's left on the screen).

-Peff

← back to recent threads