Skip to content

Commit

Permalink
git submodule: Add test cases for git submodule add
Browse files Browse the repository at this point in the history
Add simple test cases for adding and initialising submodules. The
init step is necessary in order to verify the added information.

The second test exposes a known breakage due to './' in the path: git
ls-files simplifies the path but git add does not, which leads to git
init looking for different lines in .gitmodules than git add adds.

The other tests add test cases for '//' and '..' in the path which
currently fail for the same reason.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Michael J Gruber authored and Junio C Hamano committed Mar 4, 2009
1 parent dcc901b commit ac8463d
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions t/t7400-submodule-basic.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit ac8463d

Please sign in to comment.