diff options
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/t0109-gitconfig.sh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/t0109-gitconfig.sh b/tests/t0109-gitconfig.sh new file mode 100755 index 0000000..cdd570b --- /dev/null +++ b/tests/t0109-gitconfig.sh | |||
@@ -0,0 +1,25 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | test_description='Ensure that git does not access $HOME' | ||
4 | . ./setup.sh | ||
5 | |||
6 | test -n "$(which strace 2>/dev/null)" || { | ||
7 | skip_all='Skipping access validation tests: strace not found' | ||
8 | test_done | ||
9 | exit | ||
10 | } | ||
11 | |||
12 | test_expect_success 'no access to $HOME' ' | ||
13 | non_existant_path="/path/to/some/place/that/does/not/possibly/exist" | ||
14 | while test -d "$non_existant_path"; do | ||
15 | non_existant_path="$non_existant_path/$(date +%N)" | ||
16 | done | ||
17 | strace \ | ||
18 | -E HOME="$non_existant_path" \ | ||
19 | -E CGIT_CONFIG="$PWD/cgitrc" \ | ||
20 | -E QUERY_STRING="url=foo/commit" \ | ||
21 | -e access -f -o strace.out cgit | ||
22 | test_must_fail grep "$non_existant_path" strace.out | ||
23 | ' | ||
24 | |||
25 | test_done | ||