[PATCH] new test fails "add -p" for adds on the top line
From: Matt Graham <hidden>
Date: 2016-06-15 22:46:47
Subsystem:
the rest · Maintainer:
Linus Torvalds
add -p doesn't work for some diffs. diffs adding a new line at the top of the file with other adds later in the file are one way to trigger the problem. during add -p, split the diff and then answer y for all segments. the file won't have been added to the index. Signed-off-by: Matthew Graham <redacted> --- t/t3701-add-interactive.sh | 32 ++++++++++++++++++++++++++++++++ 1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/t/t3701-add-interactive.sh b/t/t3701-add-interactive.sh
index dfc6560..45da6c8 100755
--- a/t/t3701-add-interactive.sh
+++ b/t/t3701-add-interactive.sh@@ -163,6 +163,38 @@ test_expect_success FILEMODE 'stage mode but not hunk' ' git diff file | grep "+content" ' +# Write the patch file with a new line at the top and bottom +cat >patch <<EOF +index 180b47c..b6f2c08 100644 +--- a/file ++++ b/file +@@ -1,2 +1,4 @@ ++firstline + baseline + content ++lastline +EOF +# Expected output, similar to the patch but w/ diff at the top +cat >expected <<EOF +diff --git a/file b/file +index b6f2c08..61b9053 100755 +--- a/file ++++ b/file +@@ -1,2 +1,4 @@ ++firstline + baseline + content ++lastline +EOF +# Test splitting the first patch, then adding both +test_expect_failure 'add first line works' ' + git commit -am "clear local changes" && + git apply patch && + (echo s; echo y; echo y) | git add -p file && + git diff --cached > diff && + test_cmp expected diff +' + # end of tests disabled when filemode is not usable test_done
--
1.6.3.9.g6345