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

Re: [PATCH v3] add-patch: response to unknown command

From
Pphillip.wood123@gmail.com <phillip.wood123@gmail.com>
Date
Apr 21, 2024, 13:18 UTC
Message-ID
<b1c725f3-0e92-4723-a7ca-8d001d60b89e@gmail.com>
In-Reply-To
<db1d540f-30ae-4d4c-883b-088bcfe68140@gmail.com>
Hi Rubén
This is looking good, I've left a couple of comments on the test.
On 21/04/2024 10:51, Rubén Justo wrote:
Show 15 quoted lines
> When the user gives an unknown command to the "add -p" prompt, the list
> of accepted commands with their explanation is given.  This is the same
> output they get when they say '?'.
> 
> However, the unknown command may be due to a user input error rather
> than the user not knowing the valid command.
> 
> To reduce the likelihood of user confusion and error repetition, instead
> of displaying the list of accepted commands, display a short error
> message with the unknown command received, as feedback to the user.
> 
> Include a reminder about the current command '?' in the new message, to
> guide the user if they want help.
> 
> Signed-off-by: Rubén Justo <rjusto@gmail.com>
> +test_expect_success 'unknown command' '
> +	test_when_finished "git reset --hard; rm -f command" &&
> +	echo W >command &&

I find separating out writing this file from where it is used makes it harder to see the input to "git add -p" using test_write_lines as you did in v1 matches the existing tests and is perfectly fine.

Show 14 quoted lines
> +	git add -N command &&
> +	cat >expect <<-EOF &&
> +	diff --git a/command b/command
> +	new file mode 100644
> +	index 0000000..a42d8ff
> +	--- /dev/null
> +	+++ b/command
> +	@@ -0,0 +1 @@
> +	+W
> +	(1/1) Stage addition [y,n,q,a,d,e,p,?]? Unknown command ${SQ}W${SQ} (use ${SQ}?${SQ} for help)
> +	(1/1) Stage addition [y,n,q,a,d,e,p,?]?$SP
> +	EOF
> +	git add -p -- command <command >actual 2>&1 &&
> +	test_cmp expect actual

It is really good to see us testing the whole of the program output now but have you tested this with GIT_TEST_DEFAULT_HASH=sha256? All the other tests use diff_cmp() to avoid test failures caused by the index line depending on the hash function. Alternatively you could run "git diff" to create that part of the expected output.

It is a shame we're not testing '?' as we have changed the implementation - before this commit '?' was just another unknown command as far as the implementation was concerned, now we treat it differently. It would be nice to see some test coverage for the 'p' command you recently added as well at some point.

>   test_expect_success 'setup patch' '
> -	SP=" " &&

Nice attention to detail, this is not needed now SP is defined at the beginning of the test file.

Best Wishes
Phillip
Previous: Rubén JustoNext: Rubén Justo
Message 18 of 55 in “add-patch: response to invalid option”
  1. add-patch: response to invalid optionRubén Justo, Apr 15, 2024
  2. Patrick SteinhardtApr 16, 2024
  3. Rubén JustoApr 16, 2024
  4. phillip.wood123@gmail.comApr 16, 2024
  5. Rubén JustoApr 16, 2024
  6. phillip.wood123@gmail.comApr 17, 2024
  7. Junio C HamanoApr 17, 2024
  8. phillip.wood123@gmail.comApr 18, 2024
  9. Junio C HamanoApr 16, 2024
  10. Phillip WoodApr 16, 2024
  11. Junio C HamanoApr 16, 2024
  12. Phillip WoodApr 16, 2024
  13. Junio C HamanoApr 16, 2024
  14. Rubén JustoApr 16, 2024
  15. add-patch: response to invalid commandRubén Justo, Apr 20, 2024
  16. Junio C HamanoApr 20, 2024
  17. add-patch: response to unknown commandRubén Justo, Apr 21, 2024
  18. phillip.wood123@gmail.comApr 21, 2024
  19. Rubén JustoApr 21, 2024
  20. add-patch: response to unknown commandRubén Justo, Apr 21, 2024
  21. Junio C HamanoApr 22, 2024
  22. phillip.wood123@gmail.comApr 24, 2024
  23. Junio C HamanoApr 24, 2024
  24. Phillip WoodApr 29, 2024
  25. Junio C HamanoApr 29, 2024
  26. Jeff KingApr 25, 2024
  27. Eric SunshineApr 25, 2024
  28. Junio C HamanoApr 25, 2024
  29. Eric SunshineApr 25, 2024
  30. Junio C HamanoApr 25, 2024
  31. Junio C HamanoApr 25, 2024
  32. Rubén JustoApr 25, 2024
  33. Junio C HamanoApr 25, 2024
  34. Rubén JustoApr 25, 2024
  35. Junio C HamanoApr 26, 2024
  36. Junio C HamanoApr 26, 2024
  37. Jeff KingApr 26, 2024
  38. Rubén JustoApr 25, 2024
  39. Jeff KingApr 26, 2024
  40. Rubén JustoApr 26, 2024
  41. phillip.wood123@gmail.comApr 25, 2024
  42. 0/2 add-patch: response to unknown commandRubén Justo, Apr 29, 2024
  43. 1/2 add-patch: do not show UI messages on stderrRubén Justo, Apr 29, 2024
  44. Junio C HamanoApr 29, 2024
  45. Jeff KingApr 30, 2024
  46. Rubén JustoApr 30, 2024
  47. Junio C HamanoApr 30, 2024
  48. Junio C HamanoApr 30, 2024
  49. phillip.wood123@gmail.comApr 30, 2024
  50. Rubén JustoApr 30, 2024
  51. phillip.wood123@gmail.comMay 1, 2024
  52. Junio C HamanoMay 1, 2024
  53. Rubén JustoMay 1, 2024
  54. Junio C HamanoMay 2, 2024
  55. 2/2 add-patch: response to unknown commandRubén Justo, Apr 29, 2024

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.