Diffstat (limited to 'tests/t0114-broken-repo.sh')
| -rw-r--r-- | tests/t0114-broken-repo.sh | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/tests/t0114-broken-repo.sh b/tests/t0114-broken-repo.sh deleted file mode 100644 index 61367e6..0000000 --- a/tests/t0114-broken-repo.sh +++ /dev/null @@ -1,71 +0,0 @@ -#!/bin/sh - -test_description='Check that a misconfigured repo.path is reported' -. ./setup.sh - -mkdir -p plaindir - -cat >cgitrc.broken <<EOF -virtual-root=/ -cache-root=$PWD/cache -cache-size=0 - -ci-branch-url=https://ci.example.org/job/\$slug/job/\$ref - -repo.url=missing -repo.path=$PWD/no/such/repo.git - -repo.url=notarepo -repo.path=$PWD/plaindir -EOF - -# cgit used to spin forever on these requests, so give it a deadline and -# report a failure rather than hanging the test suite. -cgit_broken() -{ - CGIT_CONFIG="$PWD/cgitrc.broken" QUERY_STRING="url=$1" perl -e ' - my $pid = fork(); - if ($pid == 0) { - exec("cgit") or die "exec: $!"; - } - eval { - local $SIG{ALRM} = sub { die "timeout\n" }; - alarm(20); - waitpid($pid, 0); - alarm(0); - }; - if ($@) { - kill "KILL", $pid; - print STDERR "cgit did not terminate\n"; - exit 1; - } - ' </dev/null -} - -test_expect_success 'report a repo.path that does not exist' ' - cgit_broken "missing/&h=master" >tmp && - grep "Failed to open missing" tmp -' - -test_expect_success 'report a repo.path that is not a repository' ' - cgit_broken "notarepo/&h=master" >tmp && - grep "Failed to open notarepo" tmp -' - -test_expect_success 'report an unknown page for a broken repo' ' - cgit_broken "missing/nosuchpage/&h=master" >tmp && - grep "^Status: 404 Not found$" tmp && - grep "Invalid request" tmp -' - -test_expect_success 'no ci tab for a broken repo' ' - cgit_broken "missing/nosuchpage/&h=master" >tmp && - ! grep ">ci</a>" tmp -' - -test_expect_success 'report a broken repo on the ci page' ' - cgit_broken "missing/ci/&h=master" >tmp && - grep "Failed to open missing" tmp -' - -test_done |