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

[PATCH v2 0/3] Make the tests that test core.hideDotFiles more robust

From
Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com>
Date
Apr 10, 2020, 11:03 UTC
Message-ID
<pull.603.v2.git.1586516583.gitgitgadget@gmail.com>
In-Reply-To
<pull.603.git.1586374474512.gitgitgadget@gmail.com>

We have this feature on Windows where the files starting with a dot can be marked hidden (whether a file is hidden by default or not is a matter of naming convention on Unix, but it is an explicit flag on Windows). This patch improves the regression tests of this feature, and it has been carried in Git for Windows for over three years.

Junio, I'm sorry that I did not get to send v2 yesterday, and that you spent time on the two add-on patches even after I finalized this second iteration (but I was first waiting for the PR build to pass and while that happened, I got stuck in meeting after meeting).

Changes since v1:
 * A preparatory patch now moves and renames is_hidden to 
   test-lib-functions.sh
 * A typo in the function's comment is fixed, while at it.
Johannes Schindelin (3):
  t: consolidate the `is_hidden` functions
  mingw: make test_path_is_hidden tests in t0001/t5611 more robust
  t: fix casing of the operating system `Windows`
 t/t0001-init.sh         |  9 +--------
 t/t5611-clone-config.sh | 13 +++----------
 t/test-lib-functions.sh | 10 ++++++++++
 3 files changed, 14 insertions(+), 18 deletions(-)
base-commit: 9fadedd637b312089337d73c3ed8447e9f0aa775
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-603%2Fdscho%2Frobustify-is-hidden-tests-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-603/dscho/robustify-is-hidden-tests-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/603
Range-diff vs v1:
 -:  ----------- > 1:  dd81ea68d6b t: consolidate the `is_hidden` functions
 1:  889f7c21333 ! 2:  fc4202cb548 mingw: make is_hidden tests in t0001/t5611 more robust
     @@ Metadata
      Author: Johannes Schindelin <Johannes.Schindelin@gmx.de>
      
       ## Commit message ##
     -    mingw: make is_hidden tests in t0001/t5611 more robust
     +    mingw: make test_path_is_hidden tests in t0001/t5611 more robust
     +
     +    This function uses Windows' system tool `attrib` to determine the state
     +    of the hidden flag of a file or directory.
      
          We should not actually expect the first `attrib.exe` in the PATH to
          be the one we are looking for. Or that it is in the PATH, for that
          matter.
      
     +    Let's use the full path to the tool instead.
     +
          Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
      
     - ## t/t0001-init.sh ##
     -@@ t/t0001-init.sh: test_expect_success SYMLINKS 're-init to move gitdir symlink' '
     - # Tests for the hidden file attribute on windows
     - is_hidden () {
     - 	# Use the output of `attrib`, ignore the absolute path
     --	case "$(attrib "$1")" in *H*?:*) return 0;; esac
     -+	case "$("$SYSTEMROOT"/system32/attrib "$1")" in *H*?:*) return 0;; esac
     - 	return 1
     - }
     + ## t/test-lib-functions.sh ##
     +@@ t/test-lib-functions.sh: test_path_is_hidden () {
     + 	BUG "test_path_is_hidden can only be used on Windows"
       
     -
     - ## t/t5611-clone-config.sh ##
     -@@ t/t5611-clone-config.sh: test_expect_success 'clone -c remote.<remote>.fetch=<refspec> --origin=<name>' '
     - # Tests for the hidden file attribute on windows
     - is_hidden () {
       	# Use the output of `attrib`, ignore the absolute path
      -	case "$(attrib "$1")" in *H*?:*) return 0;; esac
      +	case "$("$SYSTEMROOT"/system32/attrib "$1")" in *H*?:*) return 0;; esac
       	return 1
       }
     - 
 -:  ----------- > 3:  d0c0767a2aa t: fix casing of the operating system `Windows`
-- 
gitgitgadget
Previous: Junio C HamanoNext: Johannes Schindelin via GitGitGadget
Message 6 of 15 in “mingw: make is_hidden tests in t0001/t5611 more robust”
  1. mingw: make is_hidden tests in t0001/t5611 more robustJohannes Schindelin via GitGitGadget, Apr 8, 2020
  2. Junio C HamanoApr 8, 2020
  3. 0/2 make "is_hidden" even more robustJunio C Hamano, Apr 9, 2020
  4. 1/2 mingw: refactor test_path_is_hidden out to t/test-lib-functions.shJunio C Hamano, Apr 9, 2020
  5. 2/2 t: protect against use of test_path_is_hidden outside MINGWJunio C Hamano, Apr 9, 2020
  6. 0/3 Make the tests that test core.hideDotFiles more robustJohannes Schindelin via GitGitGadget, Apr 10, 2020
  7. 2/3 mingw: make test_path_is_hidden tests in t0001/t5611 more robustJohannes Schindelin via GitGitGadget, Apr 10, 2020
  8. 3/3 t: fix casing of the operating system `Windows`Johannes Schindelin via GitGitGadget, Apr 10, 2020
  9. 1/3 t: consolidate the `is_hidden` functionsJohannes Schindelin via GitGitGadget, Apr 10, 2020
  10. Junio C HamanoApr 10, 2020
  11. 0/3 Make the tests that test core.hideDotFiles more robustJohannes Schindelin via GitGitGadget, Apr 11, 2020
  12. 2/3 mingw: make test_path_is_hidden more robustJohannes Schindelin via GitGitGadget, Apr 11, 2020
  13. 3/3 t: restrict `is_hidden` to be called only on WindowsJohannes Schindelin via GitGitGadget, Apr 11, 2020
  14. 1/3 t: consolidate the `is_hidden` functionsJohannes Schindelin via GitGitGadget, Apr 11, 2020
  15. Junio C HamanoApr 11, 2020

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.