diff options
Diffstat (limited to 't/t7407-submodule-foreach.sh')
| -rwxr-xr-x | t/t7407-submodule-foreach.sh | 49 | 
1 files changed, 47 insertions, 2 deletions
diff --git a/t/t7407-submodule-foreach.sh b/t/t7407-submodule-foreach.sh index 7ca10b8606..6ba5daf42e 100755 --- a/t/t7407-submodule-foreach.sh +++ b/t/t7407-submodule-foreach.sh @@ -178,6 +178,26 @@ test_expect_success 'test messages from "foreach --recursive"' '  '  cat > expect <<EOF +Entering '../nested1' +Entering '../nested1/nested2' +Entering '../nested1/nested2/nested3' +Entering '../nested1/nested2/nested3/submodule' +Entering '../sub1' +Entering '../sub2' +Entering '../sub3' +EOF + +test_expect_success 'test messages from "foreach --recursive" from subdirectory' ' +	( +		cd clone2 && +		mkdir untracked && +		cd untracked && +		git submodule foreach --recursive >../../actual +	) && +	test_i18ncmp expect actual +' + +cat > expect <<EOF  nested1-nested1  nested2-nested2  nested3-nested3 @@ -242,8 +262,12 @@ test_expect_success 'test "status --recursive"' '  	test_cmp expect actual  ' -sed -e "/nested2 /s/.*/+$nested2sha1 nested1\/nested2 (file2~1)/;/sub[1-3]/d" < expect > expect2 -mv -f expect2 expect +cat > expect <<EOF + $nested1sha1 nested1 (heads/master) ++$nested2sha1 nested1/nested2 (file2~1) + $nested3sha1 nested1/nested2/nested3 (heads/master) + $submodulesha1 nested1/nested2/nested3/submodule (heads/master) +EOF  test_expect_success 'ensure "status --cached --recursive" preserves the --cached flag' '  	( @@ -257,6 +281,27 @@ test_expect_success 'ensure "status --cached --recursive" preserves the --cached  	test_cmp expect actual  ' +nested2sha1=$(git -C clone3/nested1/nested2 rev-parse HEAD) + +cat > expect <<EOF + $nested1sha1 ../nested1 (heads/master) ++$nested2sha1 ../nested1/nested2 (file2) + $nested3sha1 ../nested1/nested2/nested3 (heads/master) + $submodulesha1 ../nested1/nested2/nested3/submodule (heads/master) + $sub1sha1 ../sub1 ($sub1sha1_short) + $sub2sha1 ../sub2 ($sub2sha1_short) + $sub3sha1 ../sub3 (heads/master) +EOF + +test_expect_success 'test "status --recursive" from sub directory' ' +	( +		cd clone3 && +		mkdir tmp && cd tmp && +		git submodule status --recursive > ../../actual +	) && +	test_cmp expect actual +' +  test_expect_success 'use "git clone --recursive" to checkout all submodules' '  	git clone --recursive super clone4 &&  	(  | 
