From c95cc5ec56dbb7394015eb18201403be6d80f69b Mon Sep 17 00:00:00 2001 From: John Keeping Date: Mon, 1 Apr 2013 15:09:05 +0100 Subject: 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 --- tests/t0107-snapshot.sh | 77 ++++++++++++++++++++++++------------------------- 1 file changed, 38 insertions(+), 39 deletions(-) (limited to 'tests/t0107-snapshot.sh') diff --git a/tests/t0107-snapshot.sh b/tests/t0107-snapshot.sh index 132d2e9..4fbe45e 100755 --- a/tests/t0107-snapshot.sh +++ b/tests/t0107-snapshot.sh @@ -1,77 +1,76 @@ #!/bin/sh +test_description='Verify snapshot' . ./setup.sh -prepare_tests "Verify snapshot" - -run_test 'get foo/snapshot/master.tar.gz' ' - cgit_url "foo/snapshot/master.tar.gz" >trash/tmp +test_expect_success 'get foo/snapshot/master.tar.gz' ' + cgit_url "foo/snapshot/master.tar.gz" >tmp ' -run_test 'check html headers' ' - head -n 1 trash/tmp | +test_expect_success 'check html headers' ' + head -n 1 tmp | grep "Content-Type: application/x-gzip" && - head -n 2 trash/tmp | + head -n 2 tmp | grep "Content-Disposition: inline; filename=.master.tar.gz." ' -run_test 'strip off the header lines' ' - tail -n +6 trash/tmp > trash/master.tar.gz +test_expect_success 'strip off the header lines' ' + tail -n +6 tmp > master.tar.gz ' -run_test 'verify gzip format' ' - gunzip --test trash/master.tar.gz +test_expect_success 'verify gzip format' ' + gunzip --test master.tar.gz ' -run_test 'untar' ' - rm -rf trash/master && - tar -xf trash/master.tar.gz -C trash +test_expect_success 'untar' ' + rm -rf master && + tar -xf master.tar.gz ' -run_test 'count files' ' - c=$(ls -1 trash/master/ | wc -l) && - test $c = 5 +test_expect_success 'count files' ' + ls master/ >output && + test_line_count = 5 output ' -run_test 'verify untarred file-5' ' - grep "^5$" trash/master/file-5 && - test $(cat trash/master/file-5 | wc -l) = 1 +test_expect_success 'verify untarred file-5' ' + grep "^5$" master/file-5 && + test_line_count = 1 master/file-5 ' -run_test 'get foo/snapshot/master.zip' ' - cgit_url "foo/snapshot/master.zip" >trash/tmp +test_expect_success 'get foo/snapshot/master.zip' ' + cgit_url "foo/snapshot/master.zip" >tmp ' -run_test 'check HTML headers (zip)' ' - head -n 1 trash/tmp | +test_expect_success 'check HTML headers (zip)' ' + head -n 1 tmp | grep "Content-Type: application/x-zip" && - head -n 2 trash/tmp | + head -n 2 tmp | grep "Content-Disposition: inline; filename=.master.zip." ' -run_test 'strip off the header lines (zip)' ' - tail -n +6 trash/tmp >trash/master.zip +test_expect_success 'strip off the header lines (zip)' ' + tail -n +6 tmp >master.zip ' -run_test 'verify zip format' ' - unzip -t trash/master.zip +test_expect_success 'verify zip format' ' + unzip -t master.zip ' -run_test 'unzip' ' - rm -rf trash/master && - unzip trash/master.zip -d trash +test_expect_success 'unzip' ' + rm -rf master && + unzip master.zip ' -run_test 'count files (zip)' ' - c=$(ls -1 trash/master/ | wc -l) && - test $c = 5 +test_expect_success 'count files (zip)' ' + ls master/ >output && + test_line_count = 5 output ' -run_test 'verify unzipped file-5' ' - grep "^5$" trash/master/file-5 && - test $(cat trash/master/file-5 | wc -l) = 1 +test_expect_success 'verify unzipped file-5' ' + grep "^5$" master/file-5 && + test_line_count = 1 master/file-5 ' -tests_done +test_done -- cgit v1.2.3-59-g8ed1b