diff options
author | John Keeping <john@keeping.me.uk> | 2013-04-14 17:07:41 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2013-04-15 16:59:06 +0200 |
commit | 64f30688faef0876641a8e0e4f26b5c673c291d4 (patch) | |
tree | dfa3427b56a67f3f5bf8b893e41801272ae878d6 | |
parent | a8d613efdc827a400fee89fc73e34c2666e37be6 (diff) |
t0109: test more URLs
In order to ensure that we don't access $HOME at some point after initial startup when rendering a specific view, run the strace test on a range of different pages. This ensures that we don't end up reading a configuration later for some specific view. Signed-off-by: John Keeping <john@keeping.me.uk>
-rwxr-xr-x | tests/t0109-gitconfig.sh | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/tests/t0109-gitconfig.sh b/tests/t0109-gitconfig.sh index f64e691..24b2942 100755 --- a/tests/t0109-gitconfig.sh +++ b/tests/t0109-gitconfig.sh @@ -9,17 +9,33 @@ test -n "$(which strace 2>/dev/null)" || { exit } -test_expect_success 'no access to $HOME' ' +test_no_home_access () { non_existant_path="/path/to/some/place/that/does/not/possibly/exist" while test -d "$non_existant_path"; do non_existant_path="$non_existant_path/$(date +%N)" - done + done && strace \ -E HOME="$non_existant_path" \ -E CGIT_CONFIG="$PWD/cgitrc" \ - -E QUERY_STRING="url=foo/commit" \ + -E QUERY_STRING="url=$1" \ -e access -f -o strace.out cgit && test_must_fail grep "$non_existant_path" strace.out -' +} + +function test_no_home_access_success() { + test_expect_success "do not access \$HOME: $1" " + test_no_home_access '$1' + " +} + +test_no_home_access_success +test_no_home_access_success foo +test_no_home_access_success foo/refs +test_no_home_access_success foo/log +test_no_home_access_success foo/tree +test_no_home_access_success foo/tree/file-1 +test_no_home_access_success foo/commit +test_no_home_access_success foo/diff +test_no_home_access_success foo/patch test_done |