[PATCH v2/GSoC 4/4] t0301: test credential-cache support of XDG_RUNTIME_DIR
- From
Hui Yiqun <huiyiqun@gmail.com>
- Date
- Mar 17, 2016, 16:48 UTC
- Message-ID
- <1458233326-7735-4-git-send-email-huiyiqun@gmail.com>
- In-Reply-To
- <1458233326-7735-1-git-send-email-huiyiqun@gmail.com>
t0301 now tests git-credential-cache support for XDG user-specific runtime file $XDG_RUNTIME_DIR/git/credential.sock. Specifically:
* if $XDG_RUNTIME_DIR exists, use socket at `$XDG_RUNTIME_DIR/git/credential-cache.sock`.
* otherwise, `/tmp/git-$uid/credential-cache.sock` is taken.
Signed-off-by: Hui Yiqun <huiyiqun@gmail.com> --- t/t0301-credential-cache.sh | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+)
diff --git a/t/t0301-credential-cache.sh b/t/t0301-credential-cache.sh index 82c8411..892d1ba 100755 --- a/t/t0301-credential-cache.sh +++ b/t/t0301-credential-cache.sh @@ -12,7 +12,34 @@ test -z "$NO_UNIX_SOCKETS" || { # don't leave a stale daemon running trap 'code=$?; git credential-cache exit; (exit $code); die' EXIT +test_expect_success 'set $XDG_RUNTIME_DIR' ' + XDG_RUNTIME_DIR=$HOME/xdg_runtime/ +' + +helper_test cache + +test_expect_success 'when $XDG_RUNTIME_DIR is set, `$XDG_RUNTIME_DIR/git` are used' ' + test_path_is_missing "/tmp/git-$(id -u)/git/credential-cache.sock" && + test -S "$HOME/xdg_runtime/git/credential-cache.sock" +' + +test_expect_success 'force git-credential-cache to exit so that socket disappear' ' + git credential-cache exit && + test_path_is_missing "$XDG_RUNTIME_DIR/git/credential-cache.sock" && + unset XDG_RUNTIME_DIR +' + helper_test cache + +test_expect_success 'when $XDG_RUNTIME_DIR is not set, `/tmp/git-$(id -u) is used' ' + test -S "/tmp/git-$(id -u)/credential-cache.sock" +' + +# TODO: if $XDG_RUNTIME_DIR/git/ exists, but has wrong permission and ownership, +# `helper_test cache` must fail. + +# TODO: check whether `--socket` works + helper_test_timeout cache --timeout=1 # we can't rely on our "trap" above working after test_done,
-- 2.7.3