diff options
author | John Keeping <john@keeping.me.uk> | 2013-04-01 23:09:05 (JST) |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2013-04-09 05:27:11 (JST) |
commit | c95cc5ec56dbb7394015eb18201403be6d80f69b (patch) | |
tree | 7014b96a1a1408b5291532c0c442082aba693a80 /tests/t0001-validate-git-versions.sh | |
parent | 8a92df033e974af6338b530a0d78d1bdb0b0f918 (diff) | |
download | cgit-c95cc5ec56dbb7394015eb18201403be6d80f69b.zip cgit-c95cc5ec56dbb7394015eb18201403be6d80f69b.tar.gz |
tests: use Git's test framework
This allows tests to run in parallel as well as letting us use "prove"
or another TAP harness to run the tests.
Git's test framework requires Git to be fully built before letting any
tests run, so add a new target to the top-level Makefile which builds
all of Git instead of just libgit.a and make the "test" target depend on
that.
Signed-off-by: John Keeping <john@keeping.me.uk>
Diffstat (limited to 'tests/t0001-validate-git-versions.sh')
-rwxr-xr-x | tests/t0001-validate-git-versions.sh | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/tests/t0001-validate-git-versions.sh b/tests/t0001-validate-git-versions.sh index 3378358..754046e 100755 --- a/tests/t0001-validate-git-versions.sh +++ b/tests/t0001-validate-git-versions.sh | |||
@@ -1,36 +1,36 @@ | |||
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | 2 | ||
3 | test_description='Check Git version is correct' | ||
4 | CGIT_TEST_NO_CREATE_REPOS=YesPlease | ||
3 | . ./setup.sh | 5 | . ./setup.sh |
4 | 6 | ||
5 | prepare_tests 'Check Git version is correct' | 7 | test_expect_success 'extract Git version from Makefile' ' |
6 | |||
7 | run_test 'extract Git version from Makefile' ' | ||
8 | sed -n -e "/^GIT_VER[ ]*=/ { | 8 | sed -n -e "/^GIT_VER[ ]*=/ { |
9 | s/^GIT_VER[ ]*=[ ]*// | 9 | s/^GIT_VER[ ]*=[ ]*// |
10 | p | 10 | p |
11 | }" ../Makefile >trash/makefile_version | 11 | }" ../../Makefile >makefile_version |
12 | ' | 12 | ' |
13 | 13 | ||
14 | run_test 'test Git version matches Makefile' ' | 14 | test_expect_success 'test Git version matches Makefile' ' |
15 | ( cat ../git/GIT-VERSION-FILE || echo "No GIT-VERSION-FILE" ) | | 15 | ( cat ../../git/GIT-VERSION-FILE || echo "No GIT-VERSION-FILE" ) | |
16 | sed -e "s/GIT_VERSION[ ]*=[ ]*//" >trash/git_version && | 16 | sed -e "s/GIT_VERSION[ ]*=[ ]*//" >git_version && |
17 | diff -u trash/git_version trash/makefile_version | 17 | test_cmp git_version makefile_version |
18 | ' | 18 | ' |
19 | 19 | ||
20 | run_test 'test submodule version matches Makefile' ' | 20 | test_expect_success 'test submodule version matches Makefile' ' |
21 | if ! test -e ../git/.git | 21 | if ! test -e ../../git/.git |
22 | then | 22 | then |
23 | echo "git/ is not a Git repository" >&2 | 23 | echo "git/ is not a Git repository" >&2 |
24 | else | 24 | else |
25 | ( | 25 | ( |
26 | cd .. && | 26 | cd ../.. && |
27 | sm_sha1=$(git ls-files --stage -- git | | 27 | sm_sha1=$(git ls-files --stage -- git | |
28 | sed -e "s/^[0-9]* \\([0-9a-f]*\\) [0-9] .*$/\\1/") && | 28 | sed -e "s/^[0-9]* \\([0-9a-f]*\\) [0-9] .*$/\\1/") && |
29 | cd git && | 29 | cd git && |
30 | git describe --match "v[0-9]*" $sm_sha1 | 30 | git describe --match "v[0-9]*" $sm_sha1 |
31 | ) | sed -e "s/^v//" >trash/sm_version && | 31 | ) | sed -e "s/^v//" >sm_version && |
32 | diff -u trash/sm_version trash/makefile_version | 32 | test_cmp sm_version makefile_version |
33 | fi | 33 | fi |
34 | ' | 34 | ' |
35 | 35 | ||
36 | tests_done | 36 | test_done |