mirror of
https://github.com/git/git.git
synced 2024-10-29 21:37:53 +01:00
tests: add write_script helper function
Many of the scripts in the test suite write small helper shell scripts to disk. It's best if these shell scripts start with "#!$SHELL_PATH" rather than "#!/bin/sh", because /bin/sh on some platforms is too buggy to be used. However, it can be cumbersome to expand $SHELL_PATH, because the usual recipe for writing a script is: cat >foo.sh <<-\EOF #!/bin/sh echo my arguments are "$@" EOF To expand $SHELL_PATH, you have to either interpolate the here-doc (which would require quoting "\$@"), or split the creation into two commands (interpolating the $SHELL_PATH line, but not the rest of the script). Let's provide a helper function that makes that less syntactically painful. While we're at it, this helper can also take care of the "chmod +x" that typically comes after the creation of such a script, saving the caller a line. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
828ea97de4
commit
840c519d7e
1 changed files with 9 additions and 0 deletions
|
@ -381,11 +381,20 @@ test_config () {
|
|||
git config "$@"
|
||||
}
|
||||
|
||||
|
||||
test_config_global () {
|
||||
test_when_finished "test_unconfig --global '$1'" &&
|
||||
git config --global "$@"
|
||||
}
|
||||
|
||||
write_script () {
|
||||
{
|
||||
echo "#!${2-"$SHELL_PATH"}" &&
|
||||
cat
|
||||
} >"$1" &&
|
||||
chmod +x "$1"
|
||||
}
|
||||
|
||||
# Use test_set_prereq to tell that a particular prerequisite is available.
|
||||
# The prerequisite can later be checked for in two ways:
|
||||
#
|
||||
|
|
Loading…
Reference in a new issue