Re: [PATCH v5 2/4] format-patch: add '--base' option to record base tree info
flat view
From: Junio C Hamano <hidden>
Date: 2016-06-16 02:18:55
Xiaolong Ye [off-list ref] writes:
quoted hunk
diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh index eed2981..a6ce727 100755 --- a/t/t4014-format-patch.sh +++ b/t/t4014-format-patch.sh@@ -1460,4 +1460,19 @@ test_expect_success 'format-patch -o overrides format.outputDirectory' ' test_path_is_dir patchset ' +test_expect_success 'format-patch --base' ' + git checkout side && + git format-patch --stdout --base=HEAD~~~ -1 >patch && + grep -e "^base-commit:" -A3 patch >actual && + echo "base-commit: $(git rev-parse HEAD~~~)" >expected &&
HEAD~3 would be easier to read (and HEAD~2 is easier than HEAD~~).
quoted hunk
+ echo "prerequisite-patch-id: $(git show --patch HEAD~~ | git patch-id --stable | awk "{print \$1}")" >>expected && + echo "prerequisite-patch-id: $(git show --patch HEAD~ | git patch-id --stable | awk "{print \$1}")" >>expected && + test_cmp expected actual +' + +test_expect_success 'format-patch --base error handling' ' + ! git format-patch --base=HEAD~ -2 && + ! git format-patch --base=HEAD~ -3 +'
When making sure that "git" exits with a failure in a controlled way (i.e. you want to consider "git" that segfaults as not passing the test), do not use "! git cmd", but use "test_must_fail git cmd" instead. You now have a quite elaborate logic in base validation in this round. Is the topology of the history used in this test still complex enough to make sure the logic is being tested?