c74c72034f
A #! line in these files is misleading, since these scriptlets are meant to be sourced with '.' (using whatever shell sources them) instead of run directly using the interpreter named on the #! line. Removing the #! line shouldn't hurt syntax highlighting since these files have filenames ending with '.sh'. For documentation, add a brief description of how the files are meant to be used in place of the shebang line. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
42 lines
1.3 KiB
Bash
42 lines
1.3 KiB
Bash
# Helper functions to check if read-tree would succeed/fail as expected with
|
|
# and without the dry-run option. They also test that the dry-run does not
|
|
# write the index and that together with -u it doesn't touch the work tree.
|
|
#
|
|
read_tree_must_succeed () {
|
|
git ls-files -s >pre-dry-run &&
|
|
git read-tree -n "$@" &&
|
|
git ls-files -s >post-dry-run &&
|
|
test_cmp pre-dry-run post-dry-run &&
|
|
git read-tree "$@"
|
|
}
|
|
|
|
read_tree_must_fail () {
|
|
git ls-files -s >pre-dry-run &&
|
|
test_must_fail git read-tree -n "$@" &&
|
|
git ls-files -s >post-dry-run &&
|
|
test_cmp pre-dry-run post-dry-run &&
|
|
test_must_fail git read-tree "$@"
|
|
}
|
|
|
|
read_tree_u_must_succeed () {
|
|
git ls-files -s >pre-dry-run &&
|
|
git diff-files -p >pre-dry-run-wt &&
|
|
git read-tree -n "$@" &&
|
|
git ls-files -s >post-dry-run &&
|
|
git diff-files -p >post-dry-run-wt &&
|
|
test_cmp pre-dry-run post-dry-run &&
|
|
test_cmp pre-dry-run-wt post-dry-run-wt &&
|
|
git read-tree "$@"
|
|
}
|
|
|
|
read_tree_u_must_fail () {
|
|
git ls-files -s >pre-dry-run &&
|
|
git diff-files -p >pre-dry-run-wt &&
|
|
test_must_fail git read-tree -n "$@" &&
|
|
git ls-files -s >post-dry-run &&
|
|
git diff-files -p >post-dry-run-wt &&
|
|
test_cmp pre-dry-run post-dry-run &&
|
|
test_cmp pre-dry-run-wt post-dry-run-wt &&
|
|
test_must_fail git read-tree "$@"
|
|
}
|