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

Re: [GSoC][PATCH v4 4/5] t0000: use test_cmp instead of "test" builtin

From
Thomas Gummerer <t.gummerer@gmail.com>
Date
Mar 30, 2019, 19:38 UTC
Message-ID
<20190330193842.GR32487@hank.intra.tgummerer.com>
In-Reply-To
<731463ed9892c283b6acb0ce69e097769e43de62.1553954776.git.ttjtftx@gmail.com>
On 03/30, Jonathan Chang wrote:
Show 14 quoted lines
> Signed-off-by: Jonathan Chang <ttjtftx@gmail.com>
> ---
>  t/t0000-basic.sh | 14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
> 
> diff --git a/t/t0000-basic.sh b/t/t0000-basic.sh
> index 3de13daabe..49923c5ff1 100755
> --- a/t/t0000-basic.sh
> +++ b/t/t0000-basic.sh
> @@ -1118,16 +1118,18 @@ P=$(test_oid root)
>  
>  test_expect_success 'git commit-tree records the correct tree in a commit' '
>  	commit0=$(echo NO | git commit-tree $P) &&
> -	git show --pretty=raw $commit0 >actual &&

This line has been introduced in a previous commit. If the file was called 'output' there already, I think that patch would be just as understandable, but this diff would be a little less noisy.

Show 5 quoted lines
> -	tree=$(sed -n -e "s/^tree //p" -e "/^author /q" actual) &&
> -	test "z$tree" = "z$P"
> +	git show --pretty=raw $commit0 >output &&
> +	echo "$P" >expect &&
> +	sed -n -e "s/^tree //p" -e "/^author /q" output >actual &&

I'd find it a bit more natural to either first create the expect file, and then do the 'git show' and 'sed' invocations in two subsequent lines, or do them first, and then create the expect files, rather than interleaving them.

I'm not sure either of these by itself is worth a new iteration, unless there is also something else to fix up. But it's something that you might want to keep in mind for future patches.

Show 18 quoted lines
> +	test_cmp expect actual
>  '
>  
>  test_expect_success 'git commit-tree records the correct parent in a commit' '
>  	commit1=$(echo NO | git commit-tree $P -p $commit0) &&
> -	git show --pretty=raw $commit1 >actual &&
> -	parent=$(sed -n -e "s/^parent //p" -e "/^author /q" actual) &&
> -	test "z$commit0" = "z$parent"
> +	git show --pretty=raw $commit1 >output &&
> +	echo "$commit0" >expect &&
> +	sed -n -e "s/^parent //p" -e "/^author /q" output >actual &&
> +	test_cmp expect actual
>  '
>  
>  test_expect_success 'git commit-tree omits duplicated parent in a commit' '
> -- 
> 2.21.0
> 
Previous: Jonathan ChangNext: jonathan chang
Message 6 of 9 in “Avoid using pipes”
  1. Jonathan ChangMar 30, 2019
  2. [GSoC][PATCH v4 1/5] t0000: fix indentationJonathan Chang, Mar 30, 2019
  3. [GSoC][PATCH v4 2/5] t0000: avoid using pipesJonathan Chang, Mar 30, 2019
  4. [GSoC][PATCH v4 3/5] t0000: use test_line_count instead of wc -lJonathan Chang, Mar 30, 2019
  5. [GSoC][PATCH v4 4/5] t0000: use test_cmp instead of "test" builtinJonathan Chang, Mar 30, 2019
  6. Thomas GummererMar 30, 2019
  7. jonathan changMar 31, 2019
  8. Thomas GummererMar 31, 2019
  9. [GSoC][PATCH v4 5/5] t0000: make use of the test_must_be_empty functionJonathan Chang, Mar 30, 2019

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.