summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Johannes Schindelin <johannes.schindelin@gmx.de>2020-04-11 13:40:22 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2020-04-11 14:24:40 -0700
commit176a66a748c18132ebb747553896b810993179a6 (patch)
treee79804507efbc57568864269635c968a8a8b4d31
parentmingw: make test_path_is_hidden more robust (diff)
downloadtgif-176a66a748c18132ebb747553896b810993179a6.tar.xz
t: restrict `is_hidden` to be called only on Windows
The function won't work anywhere else, so let's mark it as an explicit bug if it is called on a non-Windows platform. Let's also rename the function to avoid cluttering the global namespace with an overly-generic function name. While at it, we also fix the code comment above that function: the lower-case `windows` refers to something different than `Windows`. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xt/t0001-init.sh2
-rwxr-xr-xt/t5611-clone-config.sh6
-rw-r--r--t/test-lib-functions.sh7
3 files changed, 9 insertions, 6 deletions
diff --git a/t/t0001-init.sh b/t/t0001-init.sh
index 9cc919d8d1..1edd5aeb8f 100755
--- a/t/t0001-init.sh
+++ b/t/t0001-init.sh
@@ -399,7 +399,7 @@ test_expect_success MINGW '.git hidden' '
mkdir newdir &&
cd newdir &&
git init &&
- is_hidden .git
+ test_path_is_hidden .git
) &&
check_config newdir/.git false unset
'
diff --git a/t/t5611-clone-config.sh b/t/t5611-clone-config.sh
index c861e12ea4..8e0fd39823 100755
--- a/t/t5611-clone-config.sh
+++ b/t/t5611-clone-config.sh
@@ -96,13 +96,13 @@ test_expect_success MINGW 'clone -c core.hideDotFiles' '
test_commit attributes .gitattributes "" &&
rm -rf child &&
git clone -c core.hideDotFiles=false . child &&
- ! is_hidden child/.gitattributes &&
+ ! test_path_is_hidden child/.gitattributes &&
rm -rf child &&
git clone -c core.hideDotFiles=dotGitOnly . child &&
- ! is_hidden child/.gitattributes &&
+ ! test_path_is_hidden child/.gitattributes &&
rm -rf child &&
git clone -c core.hideDotFiles=true . child &&
- is_hidden child/.gitattributes
+ test_path_is_hidden child/.gitattributes
'
test_done
diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
index 2f81463a24..139647a634 100644
--- a/t/test-lib-functions.sh
+++ b/t/test-lib-functions.sh
@@ -1544,8 +1544,11 @@ test_bitmap_traversal () {
rm -f "$1.normalized" "$2.normalized"
}
-# Tests for the hidden file attribute on windows
-is_hidden () {
+# Tests for the hidden file attribute on Windows
+test_path_is_hidden () {
+ test_have_prereq MINGW ||
+ BUG "test_path_is_hidden can only be used on Windows"
+
# Use the output of `attrib`, ignore the absolute path
case "$("$SYSTEMROOT"/system32/attrib "$1")" in *H*?:*) return 0;; esac
return 1