diff options
| -rwxr-xr-x | t/t7400-submodule-basic.sh | 49 | 
1 files changed, 49 insertions, 0 deletions
diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh index 2ec7ac6a51..132d0b9963 100755 --- a/t/t7400-submodule-basic.sh +++ b/t/t7400-submodule-basic.sh @@ -47,6 +47,55 @@ test_expect_success 'Prepare submodule testing' '  	GIT_CONFIG=.gitmodules git config submodule.example.url git://example.com/init.git  ' +test_expect_success 'Prepare submodule add testing' ' +	submodurl=$(pwd) +	( +		mkdir addtest && +		cd addtest && +		git init +	) +' + +test_expect_success 'submodule add' ' +	( +		cd addtest && +		git submodule add "$submodurl" submod && +		git submodule init +	) +' + +test_expect_failure 'submodule add with ./ in path' ' +	( +		cd addtest && +		git submodule add "$submodurl" ././dotsubmod/./frotz/./ && +		git submodule init +	) +' + +test_expect_failure 'submodule add with // in path' ' +	( +		cd addtest && +		git submodule add "$submodurl" slashslashsubmod///frotz// && +		git submodule init +	) +' + +test_expect_failure 'submodule add with /.. in path' ' +	( +		cd addtest && +		git submodule add "$submodurl" dotdotsubmod/../realsubmod/frotz/.. && +		git submodule init +	) +' + +test_expect_failure 'submodule add with ./, /.. and // in path' ' +	( +		cd addtest && +		git submodule add "$submodurl" dot/dotslashsubmod/./../..////realsubmod2/a/b/c/d/../../../../frotz//.. && +		git submodule init +	) +' +  test_expect_success 'status should fail for unmapped paths' '  	if git submodule status  	then  | 
