From: Jeff Sipek <jeffpc@josefsipek.net>
To: Per Cederqvist <cederp@opera.com>
Cc: git@vger.kernel.org
Subject: Re: [GUILT v3 09/31] Test suite: properly check the exit status of commands.
Date: Fri, 16 May 2014 11:45:13 -0400 [thread overview]
Message-ID: <20140516154513.GI1770@meili.valhalla.31bits.net> (raw)
In-Reply-To: <1400251578-17221-10-git-send-email-cederp@opera.com>
On Fri, May 16, 2014 at 04:45:56PM +0200, Per Cederqvist wrote:
> The "cmd" and "shouldfail" functions checked the exit status of the
> replace_path function instead of the actual command that was running.
> (The $? construct checks the exit status of the last command in a
> pipeline, not the first command.)
>
> Updated t-032.sh, which used "shouldfail" instead of "cmd" in one
> place. (The comment in the script makes it clear that the command is
> expected to succeed.)
>
> Signed-off-by: Per Cederqvist <cederp@opera.com>
> ---
> regression/scaffold | 17 +++++++++++------
> regression/t-032.sh | 2 +-
> 2 files changed, 12 insertions(+), 7 deletions(-)
>
> diff --git a/regression/scaffold b/regression/scaffold
> index 5c8b73e..e4d7487 100644
> --- a/regression/scaffold
> +++ b/regression/scaffold
> @@ -51,18 +51,23 @@ function filter_dd
> function cmd
> {
> echo "% $@"
> - "$@" 2>&1 | replace_path && return 0
> - return 1
> + (
> + exec 3>&1
> + rv=`(("$@" 2>&1; echo $? >&4) | replace_path >&3 ) 4>&1`
Wow. This took a while to decipher :)
Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
> + exit $rv
> + )
> + return $?
> }
>
> # usage: shouldfail <cmd>..
> function shouldfail
> {
> echo "% $@"
> - (
> - "$@" 2>&1 || return 0
> - return 1
> - ) | replace_path
> + ! (
> + exec 3>&1
> + rv=`(("$@" 2>&1; echo $? >&4) | replace_path >&3 ) 4>&1`
> + exit $rv
> + )
> return $?
> }
>
> diff --git a/regression/t-032.sh b/regression/t-032.sh
> index b1d5f19..bba401e 100755
> --- a/regression/t-032.sh
> +++ b/regression/t-032.sh
> @@ -28,7 +28,7 @@ shouldfail guilt import -P foo3 foo
> cmd guilt import -P foo2 foo
>
> # ok
> -shouldfail guilt import foo
> +cmd guilt import foo
>
> # duplicate patch name (implicit)
> shouldfail guilt import foo
> --
> 1.8.3.1
>
--
Fact: 28.1% of all statistics are generated randomly.
next prev parent reply other threads:[~2014-05-16 15:45 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-16 14:45 [GUILT v3 00/31] Teach guilt import-commit how to create legal patch names, and more Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 01/31] The tests should not fail if guilt.diffstat is set Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 02/31] Allow "guilt delete -f" to run from a dir which contains spaces Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 03/31] Added test case for "guilt delete -f" Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 04/31] Allow "guilt import-commit" to run from a dir which contains spaces Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 05/31] "guilt new": Accept more than 4 arguments Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 06/31] Fix the do_get_patch function Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 07/31] Added test cases for "guilt fold" Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 08/31] Added more test cases for "guilt new": empty patches Per Cederqvist
2014-05-16 15:01 ` Jeff Sipek
2014-05-16 14:45 ` [GUILT v3 09/31] Test suite: properly check the exit status of commands Per Cederqvist
2014-05-16 15:45 ` Jeff Sipek [this message]
2014-05-18 19:12 ` Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 10/31] Run test_failed if the exit status of a test script is bad Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 11/31] test suite: remove pointless redirection Per Cederqvist
2014-05-16 14:45 ` [GUILT v3 12/31] "guilt header": more robust header selection Per Cederqvist
2014-05-16 15:22 ` Jeff Sipek
2014-05-16 14:46 ` [GUILT v3 13/31] Check that "guilt header '.*'" fails Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 14/31] Use "git check-ref-format" to validate patch names Per Cederqvist
2014-05-16 15:20 ` Jeff Sipek
2014-05-18 18:59 ` Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 15/31] Produce legal patch names in guilt-import-commit Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 16/31] Fix backslash handling when creating names of imported patches Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 17/31] "guilt graph" no longer loops when no patches are applied Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 18/31] guilt-graph: Handle commas in branch names Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 19/31] Check that "guilt graph" works when working on a branch with a comma Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 20/31] "guilt graph": Handle patch names containing quotes Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 21/31] The log.decorate setting should not influence import-commit Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 22/31] The log.decorate setting should not influence patchbomb Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 23/31] The log.decorate setting should not influence guilt rebase Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 24/31] disp no longer processes backslashes Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 25/31] "guilt push" now fails when there are no more patches to push Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 26/31] "guilt pop" now fails when there are no more patches to pop Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 27/31] Minor testsuite fix Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 28/31] Fix coding style errors in t-061.sh Per Cederqvist
2014-05-16 15:23 ` Jeff Sipek
2014-05-16 14:46 ` [GUILT v3 29/31] Added guilt.reusebranch configuration option Per Cederqvist
2014-05-16 15:26 ` Jeff Sipek
2014-05-16 14:46 ` [GUILT v3 30/31] Added a short style guide, and Emacs settings Per Cederqvist
2014-05-16 14:46 ` [GUILT v3 31/31] Don't use "git log -p" in the test suite Per Cederqvist
2014-05-16 15:36 ` Jeff Sipek
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140516154513.GI1770@meili.valhalla.31bits.net \
--to=jeffpc@josefsipek.net \
--cc=cederp@opera.com \
--cc=git@vger.kernel.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.
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 NNTP newsgroup(s).