diff options
author | Michael J Gruber <git@drmicha.warpmail.net> | 2010-12-13 17:12:29 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-12-13 11:54:39 -0800 |
commit | 0137ef7dae553f9eb89cbae1ddb60b72046ba28b (patch) | |
tree | 90dceeade2a71892c7b458c63ec7982180cdfc61 /t/t8004-blame-with-conflicts.sh | |
parent | 28368e9f0bced688e4baf3b02b1bfcb6580909c4 (diff) | |
download | git-0137ef7dae553f9eb89cbae1ddb60b72046ba28b.tar.gz git-0137ef7dae553f9eb89cbae1ddb60b72046ba28b.tar.xz |
t800?-blame.sh: retitle uniquely
Currently we have three test files matching t800?-blame.sh.
Rename the latter two to make it easier to spot where additions would
go.
Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t8004-blame-with-conflicts.sh')
-rwxr-xr-x | t/t8004-blame-with-conflicts.sh | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/t/t8004-blame-with-conflicts.sh b/t/t8004-blame-with-conflicts.sh new file mode 100755 index 000000000..ba19ac127 --- /dev/null +++ b/t/t8004-blame-with-conflicts.sh @@ -0,0 +1,73 @@ +#!/bin/sh + +# Based on a test case submitted by Björn Steinbrink. + +test_description='git blame on conflicted files' +. ./test-lib.sh + +test_expect_success 'setup first case' ' + # Create the old file + echo "Old line" > file1 && + git add file1 && + git commit --author "Old Line <ol@localhost>" -m file1.a && + + # Branch + git checkout -b foo && + + # Do an ugly move and change + git rm file1 && + echo "New line ..." > file2 && + echo "... and more" >> file2 && + git add file2 && + git commit --author "U Gly <ug@localhost>" -m ugly && + + # Back to master and change something + git checkout master && + echo " + +bla" >> file1 && + git commit --author "Old Line <ol@localhost>" -a -m file1.b && + + # Back to foo and merge master + git checkout foo && + if git merge master; then + echo needed conflict here + exit 1 + else + echo merge failed - resolving automatically + fi && + echo "New line ... +... and more + +bla +Even more" > file2 && + git rm file1 && + git commit --author "M Result <mr@localhost>" -a -m merged && + + # Back to master and change file1 again + git checkout master && + sed s/bla/foo/ <file1 >X && + rm file1 && + mv X file1 && + git commit --author "No Bla <nb@localhost>" -a -m replace && + + # Try to merge into foo again + git checkout foo && + if git merge master; then + echo needed conflict here + exit 1 + else + echo merge failed - test is setup + fi +' + +test_expect_success \ + 'blame runs on unconflicted file while other file has conflicts' ' + git blame file2 +' + +test_expect_success 'blame runs on conflicted file in stages 1,3' ' + git blame file1 +' + +test_done |