-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'jl/read-tree-m-dry-run'
* jl/read-tree-m-dry-run: Teach read-tree the -n|--dry-run option unpack-trees: add the dry_run flag to unpack_trees_options
- Loading branch information
Showing
14 changed files
with
202 additions
and
143 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
#!/bin/sh | ||
# | ||
# 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 "$@" | ||
} |
Oops, something went wrong.