contrib/subtree: Add merge tests

Add some tests for various merge operations.  Test combinations of merge
with --message, --prefix and --squash.

Signed-off-by: Techlive Zheng <techlivezheng@gmail.com>
Signed-off-by: David A. Greene <greened@obbligato.org>
Signed-off-by: Jeff King <peff@peff.net>
This commit is contained in:
Techlive Zheng 2015-11-12 20:32:33 -06:00 committed by Jeff King
parent c9924996c9
commit 4f96fcc9a2

View file

@ -210,11 +210,22 @@ test_expect_success 'check if --message for merge works with squash too' '
test_expect_success 'merge new subproj history into subdir' '
git subtree merge --prefix="sub dir" FETCH_HEAD &&
git branch pre-split &&
check_equal ''"$(last_commit_message)"'' "Merge commit '"'"'"$(git rev-parse sub2)"'"'"' into mainline" &&
undo
'
test_expect_success 'merge new subproj history into subdir/ with --prefix and --message' '
git subtree merge --prefix="sub dir" --message="Merged changes from subproject" FETCH_HEAD &&
check_equal "$(last_commit_message)" "Merged changes from subproject" &&
undo
'
test_expect_success 'merge new subproj history into subdir/ with --squash and --prefix and --message' '
git subtree merge --prefix="sub dir" --message="Merged changes from subproject using squash" --squash FETCH_HEAD &&
check_equal "$(last_commit_message)" "Merged changes from subproject using squash" &&
undo
'
test_expect_success 'split requires option --prefix' '
echo "You must provide the --prefix option." > expected &&
test_must_fail git subtree split > actual 2>&1 &&