git-lfs/t/t-submodule.sh
brian m. carlson 88d1af46e5
t: switch several tests to use canonical names
There are several places in our testsuite where the git-lfs binary we're
testing produces canonical paths.  Ensure that our test framework also
uses canonical paths so that our comparisons for equality do not fail
spuriously.
2019-09-09 14:30:55 +00:00

86 lines
3.0 KiB
Bash
Executable File

#!/usr/bin/env bash
. "$(dirname "$0")/testlib.sh"
reponame="submodule-test-repo"
submodname="submodule-test-submodule"
begin_test "submodule local git dir"
(
set -e
setup_remote_repo "$reponame"
setup_remote_repo "$submodname"
clone_repo "$submodname" submod
mkdir dir
echo "sub module" > dir/README
git add dir/README
git commit -a -m "submodule readme"
git push origin master
clone_repo "$reponame" repo
git submodule add "$GITSERVER/$submodname" sub
git submodule update
git add .gitmodules sub
git commit -m "add submodule"
git push origin master
grep "sub module" sub/dir/README || {
echo "submodule not setup correctly?"
cat sub/dir/README
exit 1
}
)
end_test
begin_test "submodule env"
(
set -e
# using the local clone from the above test
cd repo
git lfs env | tee env.log
grep "Endpoint=$GITSERVER/$reponame.git/info/lfs (auth=none)$" env.log
grep "LocalWorkingDir=$(canonical_path_escaped "$TRASHDIR/repo$")" env.log
grep "LocalGitDir=$(canonical_path_escaped "$TRASHDIR/repo/.git$")" env.log
grep "LocalGitStorageDir=$(canonical_path_escaped "$TRASHDIR/repo/.git$")" env.log
grep "LocalMediaDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/lfs/objects$")" env.log
grep "TempDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/lfs/tmp$")" env.log
cd .git
echo "./.git"
git lfs env | tee env.log
cat env.log
grep "Endpoint=$GITSERVER/$reponame.git/info/lfs (auth=none)$" env.log
grep "LocalWorkingDir=$" env.log
grep "LocalGitDir=$(canonical_path_escaped "$TRASHDIR/repo/.git$")" env.log
grep "LocalGitStorageDir=$(canonical_path_escaped "$TRASHDIR/repo/.git$")" env.log
grep "LocalMediaDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/lfs/objects$")" env.log
grep "TempDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/lfs/tmp$")" env.log
cd ../sub
echo "./sub"
git lfs env | tee env.log
grep "Endpoint=$GITSERVER/$submodname.git/info/lfs (auth=none)$" env.log
grep "LocalWorkingDir=$(canonical_path_escaped "$TRASHDIR/repo/sub$")" env.log
grep "LocalGitDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub$")" env.log
grep "LocalGitStorageDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub$")" env.log
grep "LocalMediaDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub/lfs/objects$")" env.log
grep "TempDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub/lfs/tmp$")" env.log
cd dir
echo "./sub/dir"
git lfs env | tee env.log
grep "Endpoint=$GITSERVER/$submodname.git/info/lfs (auth=none)$" env.log
grep "LocalWorkingDir=$(canonical_path_escaped "$TRASHDIR/repo/sub$")" env.log
grep "LocalGitDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub$")" env.log
grep "LocalGitStorageDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub$")" env.log
grep "LocalMediaDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub/lfs/objects$")" env.log
grep "TempDir=$(canonical_path_escaped "$TRASHDIR/repo/.git/modules/sub/lfs/tmp$")" env.log
)
end_test