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

[PATCH v4 0/3] t: rework tests for --pathspec-from-file

From
AGAlexandr Miloslavskiy via GitGitGadget <gitgitgadget@gmail.com>
Date
Dec 31, 2019, 10:15 UTC
Message-ID
<pull.503.v4.git.1577787313.gitgitgadget@gmail.com>
In-Reply-To
<pull.503.v3.git.1577786032.gitgitgadget@gmail.com>
Please refer to commit messages for rationale.
This branch is a follow-up for [1] where part of branch was merged into `master` via [2].

Previously in [3] there were some concerns on whether removing copy&pasted tests is good. I still think that yes, it 's a good thing, mostly because of high volume of potential 13*6=78 duplicate tests.

Still, I separated this change as last patch, so that the remaining part of the branch can be taken without it.

[1] https://lore.kernel.org/git/pull.490.git.1576161385.gitgitgadget@gmail.com/ [2] https://public-inbox.org/git/pull.445.v4.git.1575381738.gitgitgadget@gmail.com/ [3] https://lore.kernel.org/git/xmqqwoatcn5u.fsf@gitster-ct.c.googlers.com/

Changes since V1 ---------------- Small code formatting changes suggested in V1.

Changes since V2 ---------------- Changed \\\\ escaping to use here-doc instead.

Changes since V3 ---------------- Slightly improved commit message.

Alexandr Miloslavskiy (3):
  t: fix quotes tests for --pathspec-from-file
  t: directly test parse_pathspec_file()
  t: drop copy&pasted tests for --pathspec-from-file
 Makefile                            |   1 +
 t/helper/test-parse-pathspec-file.c |  33 +++++++++
 t/helper/test-tool.c                |   1 +
 t/helper/test-tool.h                |   1 +
 t/t0067-parse_pathspec_file.sh      | 108 ++++++++++++++++++++++++++++
 t/t2026-checkout-pathspec-file.sh   |  70 +-----------------
 t/t2072-restore-pathspec-file.sh    |  70 +-----------------
 t/t3704-add-pathspec-file.sh        |  70 +-----------------
 t/t7107-reset-pathspec-file.sh      |  79 +++-----------------
 t/t7526-commit-pathspec-file.sh     |  70 +-----------------
 10 files changed, 160 insertions(+), 343 deletions(-)
 create mode 100644 t/helper/test-parse-pathspec-file.c
 create mode 100755 t/t0067-parse_pathspec_file.sh
base-commit: 0a76bd7381ec0dbb7c43776eb6d1ac906bca29e6
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-503%2FSyntevoAlex%2F%230207(git)_2b_test_parse_directly-v4
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-503/SyntevoAlex/#0207(git)_2b_test_parse_directly-v4
Pull-Request: https://github.com/gitgitgadget/git/pull/503
Range-diff vs v3:
 1:  88790669ce = 1:  ce0c592bb4 t: fix quotes tests for --pathspec-from-file
 2:  68925c2712 = 2:  8748f3baf1 t: directly test parse_pathspec_file()
 3:  f71021b0dd ! 3:  d02a1eac0b t: drop copy&pasted tests for --pathspec-from-file
     @@ -3,9 +3,9 @@
          t: drop copy&pasted tests for --pathspec-from-file
      
          With direct tests for `parse_pathspec_file()` already in place, it is
     -    not very reasonable to copy&paste 6 tests for `parse_pathspec_file()`
     -    for every git command that uses it (I counted 13 commands that could use
     -    it eventually).
     +    not very reasonable to copy&paste 6 similar indirect tests for every git
     +    command that uses `parse_pathspec_file()`. I counted 13 potential git
     +    commands, which could eventually lead to 6*13=78 duplicate tests.
      
          I believe that indirect tests are redundant because I don't expect
          direct tests to ever disagree with indirect tests.
-- 
gitgitgadget
Previous: Alexandr Miloslavskiy via GitGitGadgetNext: Alexandr Miloslavskiy via GitGitGadget
Message 18 of 26 in “t: rework tests for --pathspec-from-file”
  1. 0/3 t: rework tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  2. 1/3 t: fix quotes tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  3. 2/3 t: directly test parse_pathspec_file()Alexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  4. Junio C HamanoDec 30, 2019
  5. Alexandr MiloslavskiyDec 30, 2019
  6. 3/3 t: drop copy&pasted tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  7. 0/3 t: rework tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  8. 2/3 t: directly test parse_pathspec_file()Alexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  9. 1/3 t: fix quotes tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  10. Eric SunshineDec 30, 2019
  11. Jonathan NiederDec 31, 2019
  12. Alexandr MiloslavskiyDec 31, 2019
  13. 3/3 t: drop copy&pasted tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 30, 2019
  14. 0/3 t: rework tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  15. 2/3 t: directly test parse_pathspec_file()Alexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  16. 1/3 t: fix quotes tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  17. 3/3 t: drop copy&pasted tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  18. 0/3 t: rework tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  19. 1/3 t: fix quotes tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  20. 2/3 t: directly test parse_pathspec_file()Alexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  21. 3/3 t: drop copy&pasted tests for --pathspec-from-fileAlexandr Miloslavskiy via GitGitGadget, Dec 31, 2019
  22. Junio C HamanoJan 7, 2020
  23. Alexandr MiloslavskiyJan 8, 2020
  24. Junio C HamanoJan 8, 2020
  25. Alexandr MiloslavskiyJan 8, 2020
  26. Junio C HamanoJan 8, 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.