41 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			1.2 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 "$@"
 | |
| }
 |