AgeCommit message (Collapse)AuthorLines
Make the home access test see a rendered pageBryce Kwon-2/+18
Nothing checked that the traced request worked, and one that failed early opened fewer files and passed. cgit unsets HOME, so a read that fell back on the account's entry in the password database would name that home rather than the missing one the test set. Under Valgrind every test would have failed, as strace follows valgrind into the .valgrindrc it reads from the home directory.
Let a test run require the tools it must not skipBryce Kwon-8/+8
Nothing could make a missing prerequisite fail. A host without pkg-config builds without Lua, and make test then passed with every Lua test skipped and the lua pass of t0201 never run. The whole-script skips become named prerequisites so the same list covers them, and the strace probe now traces the file class of calls the tests use, so an strace too old for it skips rather than fails.
Drop the exit lines that follow test_doneBryce Kwon-2/+0
test_done ends the script on every path, skip_all included.
Name the missing home without searching for oneBryce Kwon-10/+1
strace logs a call that names the path whether or not it succeeds, so a home that existed would still be caught, and cgit unsets HOME before git runs anyway.
Isolate git from HOME before git's own setupBryce Kwon-3/+4
Git reads the global config for its trace settings before cmd_main is reached, so the isolation there came too late and every request probed $HOME/.gitconfig. The home-access test had passed only because access is not a syscall of its own everywhere, so it now traces every call that takes a path.
Test the hardening passBryce Kwon-2/+3
Prefer POSIX forms throughout the test scriptsBryce Kwon-1/+1
Renumber the test scripts into themed rangesBryce Kwon-0/+0
The numbering walks outward from the ground the suite stands on. - t000x for the git version, html validity and the cache - t01xx for page content, one script per page - t02xx for filters, submodule links, dates and limits, which cut across pages - t03xx for defence, the security regressions and the $HOME promise - t04xx for the helper tools under tools/