Diff options
Diffstat (limited to 'tests')
| -rwxr-xr-x | tests/t0505-auth.sh | 28 |
1 file changed, 28 insertions, 0 deletions
diff --git a/tests/t0505-auth.sh b/tests/t0505-auth.sh index 7dd4a36..f7096ca 100755 --- a/tests/t0505-auth.sh +++ b/tests/t0505-auth.sh @@ -74,4 +74,32 @@ test_expect_success CGIT_LUA_NOAUTH 'without the modules a protected repository grep "Unable to complete the request" tmp ' +# A filter of the test's own turns every visitor away, which needs no Lua. +# Until a visitor is let in, the header of a protected repository shows the +# site's description in place of its own and no owner, even for a +# repository hidden from the index. +test_expect_success 'the login page keeps the repository to itself' ' + write_script deny.sh <<-\EOF && + test "$1" = body && echo "<p>sign in</p>" + exit 0 + EOF + cat >denyrc <<-EOF && + virtual-root=/ + cache-size=0 + root-desc=the whole site + auth-filter=exec:$PWD/deny.sh + repo.url=authy + repo.path=$PWD/repos/authy/.git + repo.desc=the secret plan + repo.owner=Mallory Owner + repo.hide=1 + EOF + cgit_rc denyrc "url=authy/log/" >tmp && + grep "<p>sign in</p>" tmp && + grep "<p class=.sub desc.>the whole site</p>" tmp && + grep "<meta name=.description. content=.the whole site.>" tmp && + ! grep "secret plan" tmp && + ! grep "Mallory" tmp +' + test_done |
