Diffstat (limited to 'tests/t0001-validate-git-versions.sh')
| -rwxr-xr-x | tests/t0001-validate-git-versions.sh | 41 |
1 files changed, 16 insertions, 25 deletions
diff --git a/tests/t0001-validate-git-versions.sh b/tests/t0001-validate-git-versions.sh index dd84fe3..3378358 100755 --- a/tests/t0001-validate-git-versions.sh +++ b/tests/t0001-validate-git-versions.sh @@ -1,45 +1,36 @@ #!/bin/sh -if [ "${CGIT_TEST_NO_GIT_VERSION}" = "YesPlease" ]; then - exit 0 -fi - -test_description='Check Git version is correct' -CGIT_TEST_NO_CREATE_REPOS=YesPlease . ./setup.sh -test_expect_success 'extract Git version from Makefile' ' +prepare_tests 'Check Git version is correct' + +run_test 'extract Git version from Makefile' ' sed -n -e "/^GIT_VER[ ]*=/ { s/^GIT_VER[ ]*=[ ]*// p - }" ../../Makefile >makefile_version + }" ../Makefile >trash/makefile_version ' -# Note that Git's GIT-VERSION-GEN script applies "s/-/./g" to the version -# string to produce the internal version in the GIT-VERSION-FILE, so we -# must apply the same transformation to the version in the Makefile before -# comparing them. -test_expect_success 'test Git version matches Makefile' ' - ( cat ../../git/GIT-VERSION-FILE || echo "No GIT-VERSION-FILE" ) | - sed -e "s/GIT_VERSION[ ]*=[ ]*//" -e "s/\\.dirty$//" >git_version && - sed -e "s/-/./g" makefile_version >makefile_git_version && - test_cmp git_version makefile_git_version +run_test 'test Git version matches Makefile' ' + ( cat ../git/GIT-VERSION-FILE || echo "No GIT-VERSION-FILE" ) | + sed -e "s/GIT_VERSION[ ]*=[ ]*//" >trash/git_version && + diff -u trash/git_version trash/makefile_version ' -test_expect_success 'test submodule version matches Makefile' ' - if ! test -e ../../git/.git +run_test 'test submodule version matches Makefile' ' + if ! test -e ../git/.git then echo "git/ is not a Git repository" >&2 else ( - cd ../.. && - sm_oid=$(git ls-files --stage -- git | + cd .. && + sm_sha1=$(git ls-files --stage -- git | sed -e "s/^[0-9]* \\([0-9a-f]*\\) [0-9] .*$/\\1/") && cd git && - git describe --match "v[0-9]*" $sm_oid - ) | sed -e "s/^v//" -e "s/-/./" >sm_version && - test_cmp sm_version makefile_version + git describe --match "v[0-9]*" $sm_sha1 + ) | sed -e "s/^v//" >trash/sm_version && + diff -u trash/sm_version trash/makefile_version fi ' -test_done +tests_done |