git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Usman Akinyemi <usmanakinyemi202@gmail.com>
To: ben.knoble@gmail.com, git@vger.kernel.org
Cc: chriscool@tuxfamily.org, christian.couder@gmail.com,
	gitster@pobox.com, me@ttaylorr.com, ps@pks.im
Subject: [PATCH V5 0/3] refactor t1517 to focus on help output outside a repository
Date: Sun,  3 Aug 2025 07:37:41 +0530	[thread overview]
Message-ID: <20250803020744.1037392-1-usmanakinyemi202@gmail.com> (raw)
In-Reply-To: <20250721115519.140361-1-usmanakinyemi202@gmail.com>

This series refactors t1517-outside-repo.sh to focus on testing
`git subcmd -h` outside a Git repository. It does two things:

  1. Moves the existing `update-server-info -h` test to t5200, since it
     tests behavior *inside* a repo and belongs with other update-server-info
     tests.
  
  2. Introduces a loop in t1517 that automatically verifies `-h` output
     for all main Git subcommands when run outside a repository, using
     the `nongit` helper and `git --list-cmds=main`.

This makes t1517 easier to maintain and ensures that new commands are
automatically covered for this class of behavior.


Changes since v4:
  - Changes the approach from having the t1517 to test
  both help outside and inside repo to just having inside repo.
  - Drop spurious message during test 
  - Fix known breakages that actually work
  - Fix new t5200 by removing the trailing &&
  - Move the `prune -h` test to t5304

Usman Akinyemi (3):
  t/t1517: automate `git subcmd -h` tests outside a repository
  t5200: move `update-server-info -h` test from t1517
  t5304: move `prune -h` test from t1517

 t/t1517-outside-repo.sh       | 34 +++++++++++++++++++++-------------
 t/t5200-update-server-info.sh |  5 +++++
 t/t5304-prune.sh              |  5 +++++
 3 files changed, 31 insertions(+), 13 deletions(-)

Range-diff against v2:

1:  11eb3e7bfe < -:  ---------- t/t1517: automate `git subcmd -h` tests outside a repository
-:  ---------- > 1:  75a1d540e4 t/t1517: automate `git subcmd -h` tests outside a repository
2:  5cf43192d0 ! 2:  8c028256a0 t5200: move `update-server-info -h` test from t1517
    @@ t/t1517-outside-repo.sh: test_expect_success LIBCURL 'remote-http outside reposi
      
     -test_expect_success 'update-server-info does not crash with -h' '
     -	test_expect_code 129 git update-server-info -h >usage &&
    --	test_grep "[Uu]sage: git update-server-info " usage &&
    +-	test_grep "[Uu]sage: git update-server-info " usage
     -'
     -
    + test_expect_success 'prune does not crash with -h' '
    + 	test_expect_code 129 git prune -h >usage &&
    + 	test_grep "[Uu]sage: git prune " usage &&
    + 	test_expect_code 129 nongit git prune -h >usage &&
    + 	test_grep "[Uu]sage: git prune " usage
    + '
    ++
      for cmd in $(git --list-cmds=main)
      do
      	cmd=${cmd%.*} # strip .sh, .perl, etc.
    @@ t/t5200-update-server-info.sh: test_expect_success 'midx does not create duplica
      
     +test_expect_success 'update-server-info does not crash with -h' '
     +	test_expect_code 129 git update-server-info -h >usage &&
    -+	test_grep "[Uu]sage: git update-server-info " usage &&
    ++	test_grep "[Uu]sage: git update-server-info " usage
     +'
     +
      test_done
-:  ---------- > 3:  c1cdbf272f t5304: move `prune -h` test from t1517
-- 
2.50.1


  parent reply	other threads:[~2025-08-03  2:07 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-06 21:41 [PATCH v2 0/7] move builtin help test to t1517 Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 1/7] t/t1517: move checkout-index -h " Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 2/7] t/t1517: move for-each-ref " Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 3/7] t/t1517: move ls-files " Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 4/7] t/t1517: move pack-refs " Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 5/7] t/t1517: move send-pack " Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 6/7] t/t1517: move verify-commit " Usman Akinyemi
2025-07-06 21:41 ` [PATCH v2 7/7] t/t1517: move verify-tag " Usman Akinyemi
2025-07-06 21:50 ` [PATCH v2 0/7] move builtin help " Usman Akinyemi
2025-07-06 21:50   ` [PATCH v3 1/7] t/t1517: move checkout-index -h " Usman Akinyemi
2025-07-06 21:50   ` [PATCH v3 2/7] t/t1517: move for-each-ref " Usman Akinyemi
2025-07-06 21:50   ` [PATCH v3 3/7] t/t1517: move ls-files " Usman Akinyemi
2025-07-06 21:50   ` [PATCH v3 4/7] t/t1517: move pack-refs " Usman Akinyemi
2025-07-06 21:50   ` [PATCH v3 5/7] t/t1517: move send-pack " Usman Akinyemi
2025-07-06 21:50   ` [PATCH v3 6/7] t/t1517: move verify-commit " Usman Akinyemi
2025-07-07 16:12     ` Junio C Hamano
2025-07-10 22:59       ` Usman Akinyemi
2025-07-11 16:37         ` Junio C Hamano
2025-07-21 11:55           ` [PATCH v4 0/2] refactor t1517 to focus on help output outside a repository Usman Akinyemi
2025-07-21 11:55             ` [PATCH v4 1/2] t/t1517: automate `git subcmd -h` tests " Usman Akinyemi
2025-07-26 14:34               ` D. Ben Knoble
2025-07-26 21:53                 ` Usman Akinyemi
2025-07-30 21:14                   ` D. Ben Knoble
2025-07-28 15:08                 ` Junio C Hamano
2025-08-02 19:56                 ` D. Ben Knoble
2025-08-03  1:27                   ` Usman Akinyemi
2025-07-26 14:37               ` D. Ben Knoble
2025-07-26 14:52                 ` D. Ben Knoble
2025-07-26 21:51                 ` Usman Akinyemi
2025-07-30 21:15                   ` D. Ben Knoble
2025-07-28 15:09                 ` Junio C Hamano
2025-08-26 15:57               ` Phillip Wood
2025-08-28 13:47                 ` D. Ben Knoble
2025-08-29 13:05                   ` Phillip Wood
2025-08-29 13:22                     ` D. Ben Knoble
2025-08-29 16:31                     ` Junio C Hamano
2025-08-30  3:49                       ` Usman Akinyemi
2025-07-21 11:55             ` [PATCH v4 2/2] t5200: move `update-server-info -h` test from t1517 Usman Akinyemi
2025-07-26 16:02               ` D. Ben Knoble
2025-08-03  2:07             ` Usman Akinyemi [this message]
2025-08-03  2:07               ` [PATCH V5 1/3] t/t1517: automate `git subcmd -h` tests outside a repository Usman Akinyemi
2025-08-03 14:52                 ` D. Ben Knoble
2025-08-03 17:39                   ` Junio C Hamano
2025-08-06  7:20                     ` Usman Akinyemi
2025-08-03  2:07               ` [PATCH V5 2/3] t5200: move `update-server-info -h` test from t1517 Usman Akinyemi
2025-08-03  2:07               ` [PATCH V5 3/3] t5304: move `prune " Usman Akinyemi
2025-08-08  1:06               ` [PATCH v6 0/3] refactor t1517 to focus on help output outside a repository Usman Akinyemi
2025-08-08  1:06                 ` [PATCH v6 1/3] t/t1517: automate `git subcmd -h` tests " Usman Akinyemi
2025-08-08  1:06                 ` [PATCH v6 2/3] t5200: move `update-server-info -h` test from t1517 Usman Akinyemi
2025-08-08  1:06                 ` [PATCH v6 3/3] t5304: move `prune " Usman Akinyemi
2025-08-08 14:53                 ` [PATCH v6 0/3] refactor t1517 to focus on help output outside a repository Junio C Hamano
2025-08-09 14:46                   ` D. Ben Knoble
2025-07-06 21:50   ` [PATCH v3 7/7] t/t1517: move verify-tag -h test to t1517 Usman Akinyemi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250803020744.1037392-1-usmanakinyemi202@gmail.com \
    --to=usmanakinyemi202@gmail.com \
    --cc=ben.knoble@gmail.com \
    --cc=chriscool@tuxfamily.org \
    --cc=christian.couder@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=me@ttaylorr.com \
    --cc=ps@pks.im \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).