[PATCH/RFC/GSoC 3/3] t0301: test credential-cache support of XDG_RUNTIME_DIR
From: Hui Yiqun <hidden>
Date: 2016-06-15 23:08:45
Subsystem:
the rest · Maintainer:
Linus Torvalds
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 <redacted> --- t/t0301-credential-cache.sh | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+)
diff --git a/t/t0301-credential-cache.sh b/t/t0301-credential-cache.sh
index 82c8411..0718bb0 100755
--- a/t/t0301-credential-cache.sh
+++ b/t/t0301-credential-cache.sh@@ -12,7 +12,32 @@ 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 "$XDG_RUNTIME_DIR/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. + helper_test_timeout cache --timeout=1 # we can't rely on our "trap" above working after test_done,
--
2.7.2