[PATCH] test-lib: add the test_bash convenience function
- From
Jens Lehmann <jens.lehmann@web.de>
- Date
- Jan 15, 2012, 20:00 UTC
- Message-ID
- <4F133069.10308@web.de>
Since 781f76b15 (test-lib: redirect stdin of tests) you can't simply put a "bash &&" into a test for debugging purposes anymore. Instead you'll have to use "bash <&6 >&3 2>&4".
As that invocation is not that easy to remember add the test_bash convenience function. This function also checks if the -v flag is given and will complain if that is not the case instead of letting the test hang until ^D is pressed.
Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> ---
I was tempted to call that method "run_bash" but after looking around in test-lib.sh "test_bash" seemed like a better name.
t/test-lib.sh | 11 +++++++++++ 1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/t/test-lib.sh b/t/test-lib.sh index a65dfc7..f9061e0 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -329,6 +329,17 @@ test_tick () { export GIT_COMMITTER_DATE GIT_AUTHOR_DATE } +# Stop execution and start a bash shell. This is useful for debugging tests +# and only makes sense together with "-v". + +test_bash () { + if test "$verbose" = t; then + bash <&6 >&3 2>&4 + else + say >&5 "skipping test_bash as it makes no sense without -v" + fi +} + # Call test_commit with the arguments "<message> [<file> [<contents>]]" # # This will commit a file with the given contents and the given commit
-- 1.7.9.rc1.1.g46aa0.dirty