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

Re: [PATCH v3 1/1] t3501: remove redundant file check and stop ignoring git <cmd> exit code

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 4, 2022, 15:54 UTC
Message-ID
<xmqqfsmssv1z.fsf@gitster.g>
In-Reply-To
<20220402192415.19023-2-khalid.masum.92@gmail.com>
Labnann <khalid.masum.92@gmail.com> writes:
> In the test 'cherry-pick after renaming branch', stop checking for
> the presence of a file (opos) because we are going to "grep" in it in
> the same test and the lack of it will be noticed as a failure anyway.
OK.
Show 5 quoted lines
> In the test 'revert after renaming branch', instead of allowing any
> random contents as long as a known phrase is not there in it, we can
> expect the exact outcome---after the successful revert of
> "added", the contents of file "spoo" should become identical to
> what was in file "oops" in the "initial" commit.

Makes sense. The code removes "test -f spoo", which is not explained in the above, and I do not think we want to. We'd notice a breakage where revert leaves the right result in HEAD but fails to match the working tree files if we leave it there.

> In both tests, we would not notice when "git rev-parse" starts
> segfaulting without emitting any output.  The 'test' command would
> end up being just "test =", which yields success. Therefore we could
> use test_cmp_rev

The two sentences are right. The conclusion is a bit iffy; it is not "we could", which implies that the current one is OK but it is OK to also rewrite it to use test_cmp_rev.

    Use the 'test_cmp_rev' helper to make sure we will notice such a
    breakage.
or something like that, perhaps?
> Signed-off-by: Labnann <khalid.masum.92@gmail.com>

Is Labnann your name? I do not know where you are from so forgive me if it is. We prefer people to sign with their real names (cf. Documentation/SubmittingPatches[[real-name]]) on this line (and because the name/e-mail on this line must match the author's ident, the same preference applies there, too).

Show 30 quoted lines
> ---
>  t/t3501-revert-cherry-pick.sh | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/t/t3501-revert-cherry-pick.sh b/t/t3501-revert-cherry-pick.sh
> index 8617efaaf1..ad8f0cae5a 100755
> --- a/t/t3501-revert-cherry-pick.sh
> +++ b/t/t3501-revert-cherry-pick.sh
> @@ -66,8 +66,7 @@ test_expect_success 'cherry-pick after renaming branch' '
>  
>  	git checkout rename2 &&
>  	git cherry-pick added &&
> -	test $(git rev-parse HEAD^) = $(git rev-parse rename2) &&
> -	test -f opos &&
> +	test_cmp_rev rename2 HEAD^ &&
>  	grep "Add extra line at the end" opos &&
>  	git reflog -1 | grep cherry-pick
>  
> @@ -77,9 +76,8 @@ test_expect_success 'revert after renaming branch' '
>  
>  	git checkout rename1 &&
>  	git revert added &&
> -	test $(git rev-parse HEAD^) = $(git rev-parse rename1) &&
> -	test -f spoo &&
> -	! grep "Add extra line at the end" spoo &&
> +	test_cmp_rev rename1 HEAD^ &&
> +	test_cmp_rev initial:oops HEAD:spoo &&
>  	git reflog -1 | grep revert
>  
>  '

The diff looks almost perfect here (modulo that "test -f spoo" is better kept, I would think).

Thanks.
Previous: LabnannNext: Khalid Masum
Message 11 of 16 in “t3501: use test_path_is_* functions”
  1. t3501: use test_path_is_* functionsLabnan via GitGitGadget, Mar 30, 2022
  2. Ævar Arnfjörð BjarmasonMar 30, 2022
  3. 0/3 [GSoC] t3501: remove test and test -fLabnann, Mar 31, 2022
  4. 1/3 t3501: use test_path_is_* functionsLabnann, Mar 31, 2022
  5. 2/3 t3501: don't ignore "git <cmd>" exit codeLabnann, Mar 31, 2022
  6. Junio C HamanoApr 1, 2022
  7. 3/3 t3501: test cherry-pick revert with oidsLabnann, Mar 31, 2022
  8. Junio C HamanoApr 1, 2022
  9. 0/1 [GSoC] t3501: remove redundant file checking and stop ignoring git <cmd> exit codeLabnann, Apr 2, 2022
  10. 1/1 t3501: remove redundant file check and stop ignoring git <cmd> exit codeLabnann, Apr 2, 2022
  11. Junio C HamanoApr 4, 2022
  12. 0/1 [GSoC] t3501: remove test -f and stop ignoring git <cmd> exit codeKhalid Masum, Apr 5, 2022
  13. 1/1 t3501: remove test -f and stop ignoring git <cmd> exit codeKhalid Masum, Apr 5, 2022
  14. 0/1 [GSoC] t3501: remove test -f and stop ignoring git <cmd> exit codeKhalid Masum, Apr 5, 2022
  15. 1/1 t3501: remove test -f and stop ignoring git <cmd> exit codeKhalid Masum, Apr 5, 2022
  16. t3501: remove test -f and stop ignoring git <cmd> exit codeLabnan via GitGitGadget, Apr 22, 2022

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.