aboutsummaryrefslogtreecommitdiff
path: root/tests
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rwxr-xr-xtests/t0106-diff.sh129
-rw-r--r--tests/t0112-ci.sh127
-rw-r--r--tests/t0113-ci-lua.sh78
-rw-r--r--tests/t0114-broken-repo.sh71
4 files changed, 0 insertions, 405 deletions
diff --git a/tests/t0106-diff.sh b/tests/t0106-diff.sh
index 0e45087..82b645e 100755
--- a/tests/t0106-diff.sh
+++ b/tests/t0106-diff.sh
@@ -16,133 +16,4 @@ test_expect_success 'find added line' '
grep "<div class=.add.>+5</div>" tmp
'
-test_expect_success 'ref picker: from: select present' '
- grep "<select name=.id2." tmp
-'
-
-test_expect_success 'ref picker: to: select present' '
- grep "<select name=.id." tmp
-'
-
-test_expect_success 'ref picker: from: label present' '
- grep "from:" tmp
-'
-
-test_expect_success 'ref picker: to: label present' '
- grep "to:" tmp
-'
-
-test_expect_success 'ref pickers live in a separate refs panel' '
- grep "<b>diff refs</b>" tmp &&
- grep "<b>diff options</b>" tmp
-'
-
-test_expect_success 'ref picker: master branch listed' '
- grep "master" tmp
-'
-
-test_expect_success 'ref picker: auto-submit on change' '
- grep "onchange=.this.form.submit()." tmp
-'
-
-test_expect_success 'flip link present' '
- grep "<a title=.swap from and to. class=.button. href=./foo/diff/?" tmp
-'
-
-test_expect_success 'flip link swaps the default refs' '
- grep "/foo/diff/?id2=master&amp;idoff=1" tmp
-'
-
-test_expect_success 'compare two refs: foo/diff?id=master&id2=HEAD' '
- cgit_query "url=foo/diff&id=master&id2=HEAD" >tmp
-'
-
-test_expect_success 'diff with explicit refs shows diffstat' '
- grep "diffstat" tmp
-'
-
-test_expect_success 'diff with oid2 parameter uses it for old ref' '
- cgit_query "url=foo/diff&id=master&id2=HEAD" >tmp &&
- grep "from:" tmp
-'
-
-test_expect_success 'ref picker: to: shows master when id=master' '
- cgit_query "url=foo/diff&id=master" >tmp &&
- grep "master" tmp
-'
-
-test_expect_success 'ref picker: from: empty when no id2' '
- cgit_query "url=foo/diff" >tmp &&
- grep "<select name=.id2." tmp
-'
-
-test_expect_success 'compare initial commit with HEAD' '
- root=$(git --git-dir="$PWD/repos/foo/.git" rev-list --max-parents=0 HEAD) &&
- cgit_query "url=foo/diff&id=HEAD&id2=$root" >tmp
-'
-
-test_expect_success 'diff with HEAD and root shows content' '
- grep "diffstat" tmp
-'
-
-test_expect_success 'flip link swaps explicit refs' '
- cgit_query "url=foo/diff&id=master&id2=HEAD" >tmp &&
- grep "/foo/diff/?id=HEAD&amp;id2=master" tmp
-'
-
-test_expect_success 'flip link omits id for a diff against a root commit' '
- root=$(git --git-dir="$PWD/repos/foo/.git" rev-list --max-parents=0 HEAD) &&
- cgit_query "url=foo/diff&id=$root" >tmp &&
- grep "href=./foo/diff/?id2=$root." tmp
-'
-
-test_expect_success 'offset input: to: present' '
- grep "name=.idoff." tmp
-'
-
-test_expect_success 'offset input: from: present' '
- grep "name=.id2off." tmp
-'
-
-test_expect_success 'apply button present' '
- grep "value=.apply." tmp
-'
-
-test_expect_success 'offset: idoff steps back the to ref' '
- cgit_query "url=foo/diff&id=master&idoff=1" >tmp &&
- grep "a/file-4 b/file-4" tmp
-'
-
-test_expect_success 'offset: id2off steps back the from ref' '
- cgit_query "url=foo/diff&id=master&id2=master&id2off=2" >tmp &&
- grep "a/file-5 b/file-5" tmp
-'
-
-test_expect_success 'offset: filled input and hidden field' '
- cgit_query "url=foo/diff&id=master&idoff=1" >tmp &&
- grep "title=.N commits back from the selected ref. value=.1.>" tmp &&
- grep "type=.hidden. name=.idoff. value=.1./>" tmp
-'
-
-test_expect_success 'offset: too large 404s with the stepped rev' '
- cgit_query "url=foo/diff&id=master&id2=master&id2off=9" >tmp &&
- grep "Bad object name: master~9" tmp
-'
-
-test_expect_success 'empty id2 does not 404' '
- cgit_query "url=foo/diff&id=master&id2=" >tmp &&
- grep "diffstat" tmp &&
- ! grep "Bad object name" tmp
-'
-
-test_expect_success 'file link carries the offsets' '
- cgit_query "url=foo/diff&id=master&id2=master&id2off=2" >tmp &&
- grep "/foo/diff/file-5?id2=master&amp;id2off=2" tmp
-'
-
-test_expect_success 'flip link carries the offsets' '
- cgit_query "url=foo/diff&id=master&id2=master&idoff=1&id2off=2" >tmp &&
- grep "/foo/diff/?id2=master&amp;idoff=2&amp;id2off=1" tmp
-'
-
test_done
diff --git a/tests/t0112-ci.sh b/tests/t0112-ci.sh
deleted file mode 100644
index 33609d6..0000000
--- a/tests/t0112-ci.sh
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/bin/sh
-
-test_description='Check content on ci page'
-. ./setup.sh
-
-# The ci settings are only inherited by repositories which are declared
-# after them, which is used below to get a repository with no ci url and
-# one with a tag-only ci url.
-cat >cgitrc.ci <<EOF
-virtual-root=/
-cache-root=$PWD/cache
-cache-size=0
-enable-filter-overrides=1
-
-repo.url=tagonly
-repo.path=$PWD/repos/foo/.git
-repo.ci-tag-url=https://ci.example.org/tagonly/\$ref
-
-ci-branch-url=https://ci.example.org/job/\$slug/job/\$ref
-ci-tag-url=https://ci.example.org/job/\$slug/view/tags/job/\$ref
-
-repo.url=foo
-repo.path=$PWD/repos/foo/.git
-
-repo.url=sayauz/web.git
-repo.path=$PWD/repos/foo/.git
-
-repo.url=override
-repo.path=$PWD/repos/foo/.git
-repo.ci-url=https://ci.example.org/override/\$repo/\$\$/\$ref
-
-repo.url=filtered
-repo.path=$PWD/repos/foo/.git
-repo.ci-filter=exec:$PWD/ci-filter.sh
-EOF
-
-# Records its arguments and only accepts tags.
-cat >ci-filter.sh <<EOF
-#!/bin/sh
-printf '%s|%s|%s\n' "\$1" "\$2" "\$3" >>"$PWD/ci-filter.log"
-test "\$2" = tag
-EOF
-chmod +x ci-filter.sh
-
-git --git-dir="$PWD/repos/foo/.git" tag v0.17.3.2 master
-
-cgit_ci()
-{
- CGIT_CONFIG="$PWD/cgitrc.ci" QUERY_STRING="url=$1" cgit
-}
-
-test_expect_success 'redirect to the branch ci url' '
- cgit_ci "foo/ci&h=master" >tmp &&
- grep "^Status: 302 Found$" tmp &&
- grep "^Location: https://ci.example.org/job/foo/job/master$" tmp
-'
-
-test_expect_success 'redirect to the tag ci url' '
- cgit_ci "foo/ci&h=v0.17.3.2" >tmp &&
- grep "^Status: 302 Found$" tmp &&
- grep "^Location: https://ci.example.org/job/foo/view/tags/job/v0.17.3.2$" tmp
-'
-
-test_expect_success 'redirect to the default branch ci url' '
- cgit_ci "foo/ci" >tmp &&
- grep "^Location: https://ci.example.org/job/foo/job/master$" tmp
-'
-
-test_expect_success '$slug strips ".git" and replaces slashes' '
- cgit_ci "sayauz/web.git/ci&h=v0.17.3.2" >tmp &&
- grep "^Location: https://ci.example.org/job/sayauz-web/view/tags/job/v0.17.3.2$" tmp
-'
-
-test_expect_success 'repo.ci-url overrides and expands $repo and $$' '
- cgit_ci "override/ci&h=master" >tmp &&
- grep -F "Location: https://ci.example.org/override/override/\$/master" tmp
-'
-
-test_expect_success 'repo.ci-tag-url does not apply to branches' '
- cgit_ci "tagonly/ci&h=v0.17.3.2" >tmp &&
- grep "^Location: https://ci.example.org/tagonly/v0.17.3.2$" tmp &&
- cgit_ci "tagonly/ci&h=master" >tmp &&
- grep "^Status: 404 Not found$" tmp
-'
-
-test_expect_success 'find ci tab' '
- cgit_ci "foo/refs&h=master" >tmp &&
- grep "href=./foo/ci/.>ci</a>" tmp
-'
-
-test_expect_success 'no ci tab without a ci url' '
- cgit_url "foo/refs" >tmp &&
- ! grep ">ci</a>" tmp
-'
-
-test_expect_success 'ci filter accepts a tag' '
- rm -f ci-filter.log &&
- cgit_ci "filtered/ci&h=v0.17.3.2" >tmp &&
- grep "^Location: https://ci.example.org/job/filtered/view/tags/job/v0.17.3.2$" tmp &&
- echo "v0.17.3.2|tag|https://ci.example.org/job/filtered/view/tags/job/v0.17.3.2" >expected &&
- test_cmp expected ci-filter.log
-'
-
-test_expect_success 'ci filter rejects a branch' '
- rm -f ci-filter.log &&
- cgit_ci "filtered/ci&h=master" >tmp &&
- grep "^Status: 404 Not found$" tmp &&
- echo "master|branch|https://ci.example.org/job/filtered/job/master" >expected &&
- test_cmp expected ci-filter.log
-'
-
-test_expect_success "ci filter hides the tab and is consulted once" '
- rm -f ci-filter.log &&
- cgit_ci "filtered/refs&h=master" >tmp &&
- ! grep ">ci</a>" tmp &&
- test_line_count = 1 ci-filter.log &&
- cgit_ci "filtered/refs&h=v0.17.3.2" >tmp &&
- grep "href=./filtered/ci/?h=v0.17.3.2.>ci</a>" tmp
-'
-
-test_expect_success 'ci filter is not consulted without a ci url' '
- rm -f ci-filter.log &&
- cgit_url "foo/refs" >tmp &&
- test_path_is_missing ci-filter.log
-'
-
-test_done
diff --git a/tests/t0113-ci-lua.sh b/tests/t0113-ci-lua.sh
deleted file mode 100644
index 1e095b1..0000000
--- a/tests/t0113-ci-lua.sh
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/sh
-
-test_description='Check ci filter written in Lua'
-. ./setup.sh
-
-if test $CGIT_HAS_LUA -ne 1
-then
- skip_all='Skipping Lua ci filter tests: Lua support not compiled in'
- test_done
- exit
-fi
-
-cat >cgitrc.cilua <<EOF
-virtual-root=/
-cache-root=$PWD/cache
-cache-size=0
-
-ci-url=https://ci.example.org/job/\$slug/job/\$ref
-ci-filter=lua:$PWD/ci-filter.lua
-
-repo.url=foo
-repo.path=$PWD/repos/foo/.git
-EOF
-
-# Accepts tags only, and records its arguments.
-cat >ci-filter.lua <<EOF
-function filter_open(ref, refkind, url)
- local log = io.open("$PWD/ci-filter.log", "a")
- log:write(ref .. "|" .. refkind .. "|" .. url .. "\n")
- log:close()
- accepted = (refkind == "tag")
-end
-
-function filter_write(buffer)
-end
-
-function filter_close()
- if accepted then
- return 0
- end
- return 1
-end
-EOF
-
-git --git-dir="$PWD/repos/foo/.git" tag v1.0 master
-
-cgit_ci()
-{
- CGIT_CONFIG="$PWD/cgitrc.cilua" QUERY_STRING="url=$1" cgit
-}
-
-test_expect_success 'Lua ci filter accepts a tag' '
- rm -f ci-filter.log &&
- cgit_ci "foo/ci&h=v1.0" >tmp &&
- grep "^Location: https://ci.example.org/job/foo/job/v1.0$" tmp &&
- echo "v1.0|tag|https://ci.example.org/job/foo/job/v1.0" >expected &&
- test_cmp expected ci-filter.log
-'
-
-test_expect_success 'Lua ci filter rejects a branch' '
- cgit_ci "foo/ci&h=master" >tmp &&
- grep "^Status: 404 Not found$" tmp
-'
-
-test_expect_success 'Lua ci filter controls the tab' '
- cgit_ci "foo/refs&h=v1.0" >tmp &&
- grep "href=./foo/ci/?h=v1.0.>ci</a>" tmp &&
- cgit_ci "foo/refs&h=master" >tmp &&
- ! grep ">ci</a>" tmp
-'
-
-test_expect_success 'page is still rendered correctly around the filter' '
- cgit_ci "foo/refs&h=v1.0" >tmp &&
- grep "</html>" tmp &&
- ! grep "|tag|" tmp
-'
-
-test_done
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