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

[PATCH] t: add multi-parent test of diff-tree --stdin

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Feb 22, 2017, 23:38 UTC
Message-ID
<20170222233838.925157-1-sandals@crustytoothpaste.net>
In-Reply-To
<20170222232215.u2agozagwsyy2ooe@genre.crustytoothpaste.net>

We were lacking a test that covered the multi-parent case for commits. Add a basic test to ensure we do not regress this behavior in the future.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4013-diff-various.sh | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

It's a little bit ugly to me that this test hard-codes so many values, and I'm concerned that it may be unnecessarily brittle. However, I don't have a good idea of how to perform the kind of comprehensive test we need otherwise.

diff --git a/t/t4013-diff-various.sh b/t/t4013-diff-various.sh
index d09acfe48e..e6c2a7a369 100755
--- a/t/t4013-diff-various.sh
+++ b/t/t4013-diff-various.sh
@@ -349,4 +349,23 @@ test_expect_success 'diff-tree --stdin with log formatting' '
 	test_cmp expect actual
 '
 
+test_expect_success 'diff-tree --stdin with two parent commits' '
+	cat >expect <<-\EOF &&
+	c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a
+	:040000 040000 da7a33fa77d8066d6698643940ce5860fe2d7fb3 f977ed46ae6873c1c30ab878e15a4accedc3618b M	dir
+	:100644 100644 01e79c32a8c99c557f0757da7cb6d65b3414466d f4615da674c09df322d6ba8d6b21ecfb1b1ba510 M	file0
+	:000000 100644 0000000000000000000000000000000000000000 7289e35bff32727c08dda207511bec138fdb9ea5 A	file3
+	9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0
+	:040000 040000 847b63d013de168b2de618c5ff9720d5ab27e775 65f5c9dd60ce3b2b3324b618ac7accf8d912c113 M	dir
+	:000000 100644 0000000000000000000000000000000000000000 b1e67221afe8461efd244b487afca22d46b95eb8 A	file1
+	1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44
+	:040000 040000 da7a33fa77d8066d6698643940ce5860fe2d7fb3 847b63d013de168b2de618c5ff9720d5ab27e775 M	dir
+	:100644 100644 01e79c32a8c99c557f0757da7cb6d65b3414466d b414108e81e5091fe0974a1858b4d0d22b107f70 M	file0
+	:100644 000000 01e79c32a8c99c557f0757da7cb6d65b3414466d 0000000000000000000000000000000000000000 D	file2
+	EOF
+	git rev-list --parents master | git diff-tree --stdin >actual &&
+	test_cmp expect actual
+'
+
+
 test_done
Previous: brian m. carlsonNext: Junio C Hamano
Message 13 of 28 in “object_id part 6”
  1. 00/19 object_id part 6brian m. carlson, Feb 21, 2017
  2. 01/19 hex: introduce parse_oid_hexbrian m. carlson, Feb 21, 2017
  3. 02/19 builtin/commit: convert to struct object_idbrian m. carlson, Feb 21, 2017
  4. 07/19 builtin/grep: convert to struct object_idbrian m. carlson, Feb 21, 2017
  5. 04/19 builtin/describe: convert to struct object_idbrian m. carlson, Feb 21, 2017
  6. 09/19 builtin/clone: convert to struct object_idbrian m. carlson, Feb 21, 2017
  7. 06/19 builtin/fmt-merge-message: convert to struct object_idbrian m. carlson, Feb 21, 2017
  8. 03/19 builtin/diff-tree: convert to struct object_idbrian m. carlson, Feb 21, 2017
  9. Junio C HamanoFeb 22, 2017
  10. Jeff KingFeb 22, 2017
  11. Junio C HamanoFeb 22, 2017
  12. brian m. carlsonFeb 22, 2017
  13. t: add multi-parent test of diff-tree --stdinbrian m. carlson, Feb 22, 2017
  14. Junio C HamanoFeb 22, 2017
  15. Jeff KingFeb 22, 2017
  16. brian m. carlsonFeb 22, 2017
  17. 18/19 builtin/merge-base: convert to struct object_idbrian m. carlson, Feb 21, 2017
  18. 12/19 builtin/replace: convert to struct object_idbrian m. carlson, Feb 21, 2017
  19. 14/19 refs: convert each_reflog_ent_fn to struct object_idbrian m. carlson, Feb 21, 2017
  20. 19/19 wt-status: convert to struct object_idbrian m. carlson, Feb 21, 2017
  21. 13/19 reflog-walk: convert struct reflog_info to struct object_idbrian m. carlson, Feb 21, 2017
  22. 10/19 builtin/merge: convert to struct object_idbrian m. carlson, Feb 21, 2017
  23. 11/19 Convert remaining callers of resolve_refdup to object_idbrian m. carlson, Feb 21, 2017
  24. 17/19 Convert object iteration callbacks to struct object_idbrian m. carlson, Feb 21, 2017
  25. 15/19 refs: simplify parsing of reflog entriesbrian m. carlson, Feb 21, 2017
  26. 08/19 builtin/branch: convert to struct object_idbrian m. carlson, Feb 21, 2017
  27. 16/19 sha1_file: introduce an nth_packed_object_oid functionbrian m. carlson, Feb 21, 2017
  28. 05/19 builtin/fast-export: convert to struct object_idbrian m. carlson, Feb 21, 2017

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.