git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[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
Previous: Hui YiqunNext: Jeff King
Message 5 of 9 in “path.c: implement strbuf_mkpath()”
  1. 1/4 path.c: implement strbuf_mkpath()Hui Yiqun, Mar 17, 2016
  2. 2/4 path.c: implement xdg_runtime_dir()Hui Yiqun, Mar 17, 2016
  3. Jeff KingMar 17, 2016
  4. 3/4 git-credential-cache: put socket to xdg-compatible pathHui Yiqun, Mar 17, 2016
  5. 4/4 t0301: test credential-cache support of XDG_RUNTIME_DIRHui Yiqun, Mar 17, 2016
  6. Jeff KingMar 17, 2016
  7. 惠轶群Mar 18, 2016
  8. Jeff KingMar 18, 2016
  9. 惠轶群Mar 18, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.