about summary refs log tree commit diff
path: root/third_party/git/t/t8003-blame-corner-cases.sh
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2021-09-21T10·03+0300
committerVincent Ambo <mail@tazj.in>2021-09-21T11·29+0300
commit43b1791ec601732ac31195df96781a848360a9ac (patch)
treedaae8d638343295d2f1f7da955e556ef4c958864 /third_party/git/t/t8003-blame-corner-cases.sh
parent2d8e7dc9d9c38127ec4ebd13aee8e8f586a43318 (diff)
chore(3p/git): Unvendor git and track patches instead r/2903
This was vendored a long time ago under the expectation that keeping
it in sync with cgit would be easier this way, but it has proven not
to be a big issue.

On the other hand, a vendored copy of git is an annoying maintenance
burden. It is much easier to rebase the single (dottime) patch that we
have.

This removes the vendored copy of git and instead passes the git
source code to cgit via `pkgs.srcOnly`, which includes the applied
patch so that cgit can continue rendering dottime.

Change-Id: If31f62dea7ce688fd1b9050204e9378019775f2b
Diffstat (limited to 'third_party/git/t/t8003-blame-corner-cases.sh')
-rwxr-xr-xthird_party/git/t/t8003-blame-corner-cases.sh322
1 files changed, 0 insertions, 322 deletions
diff --git a/third_party/git/t/t8003-blame-corner-cases.sh b/third_party/git/t/t8003-blame-corner-cases.sh
deleted file mode 100755
index ba8013b002..0000000000
--- a/third_party/git/t/t8003-blame-corner-cases.sh
+++ /dev/null
@@ -1,322 +0,0 @@
-#!/bin/sh
-
-test_description='git blame corner cases'
-. ./test-lib.sh
-
-pick_fc='s/^[0-9a-f^]* *\([^ ]*\) *(\([^ ]*\) .*/\1-\2/'
-
-test_expect_success setup '
-	echo A A A A A >one &&
-	echo B B B B B >two &&
-	echo C C C C C >tres &&
-	echo ABC >mouse &&
-	for i in 1 2 3 4 5 6 7 8 9
-	do
-		echo $i
-	done >nine_lines &&
-	for i in 1 2 3 4 5 6 7 8 9 a
-	do
-		echo $i
-	done >ten_lines &&
-	git add one two tres mouse nine_lines ten_lines &&
-	test_tick &&
-	GIT_AUTHOR_NAME=Initial git commit -m Initial &&
-
-	cat one >uno &&
-	mv two dos &&
-	cat one >>tres &&
-	echo DEF >>mouse &&
-	git add uno dos tres mouse &&
-	test_tick &&
-	GIT_AUTHOR_NAME=Second git commit -a -m Second &&
-
-	echo GHIJK >>mouse &&
-	git add mouse &&
-	test_tick &&
-	GIT_AUTHOR_NAME=Third git commit -m Third &&
-
-	cat mouse >cow &&
-	git add cow &&
-	test_tick &&
-	GIT_AUTHOR_NAME=Fourth git commit -m Fourth &&
-
-	cat >cow <<-\EOF &&
-	ABC
-	DEF
-	XXXX
-	GHIJK
-	EOF
-	git add cow &&
-	test_tick &&
-	GIT_AUTHOR_NAME=Fifth git commit -m Fifth
-'
-
-test_expect_success 'straight copy without -C' '
-
-	git blame uno | grep Second
-
-'
-
-test_expect_success 'straight move without -C' '
-
-	git blame dos | grep Initial
-
-'
-
-test_expect_success 'straight copy with -C' '
-
-	git blame -C1 uno | grep Second
-
-'
-
-test_expect_success 'straight move with -C' '
-
-	git blame -C1 dos | grep Initial
-
-'
-
-test_expect_success 'straight copy with -C -C' '
-
-	git blame -C -C1 uno | grep Initial
-
-'
-
-test_expect_success 'straight move with -C -C' '
-
-	git blame -C -C1 dos | grep Initial
-
-'
-
-test_expect_success 'append without -C' '
-
-	git blame -L2 tres | grep Second
-
-'
-
-test_expect_success 'append with -C' '
-
-	git blame -L2 -C1 tres | grep Second
-
-'
-
-test_expect_success 'append with -C -C' '
-
-	git blame -L2 -C -C1 tres | grep Second
-
-'
-
-test_expect_success 'append with -C -C -C' '
-
-	git blame -L2 -C -C -C1 tres | grep Initial
-
-'
-
-test_expect_success 'blame wholesale copy' '
-
-	git blame -f -C -C1 HEAD^ -- cow | sed -e "$pick_fc" >current &&
-	cat >expected <<-\EOF &&
-	mouse-Initial
-	mouse-Second
-	mouse-Third
-	EOF
-	test_cmp expected current
-
-'
-
-test_expect_success 'blame wholesale copy and more' '
-
-	git blame -f -C -C1 HEAD -- cow | sed -e "$pick_fc" >current &&
-	cat >expected <<-\EOF &&
-	mouse-Initial
-	mouse-Second
-	cow-Fifth
-	mouse-Third
-	EOF
-	test_cmp expected current
-
-'
-
-test_expect_success 'blame wholesale copy and more in the index' '
-
-	cat >horse <<-\EOF &&
-	ABC
-	DEF
-	XXXX
-	YYYY
-	GHIJK
-	EOF
-	git add horse &&
-	test_when_finished "git rm -f horse" &&
-	git blame -f -C -C1 -- horse | sed -e "$pick_fc" >current &&
-	cat >expected <<-\EOF &&
-	mouse-Initial
-	mouse-Second
-	cow-Fifth
-	horse-Not
-	mouse-Third
-	EOF
-	test_cmp expected current
-
-'
-
-test_expect_success 'blame during cherry-pick with file rename conflict' '
-
-	test_when_finished "git reset --hard && git checkout master" &&
-	git checkout HEAD~3 &&
-	echo MOUSE >> mouse &&
-	git mv mouse rodent &&
-	git add rodent &&
-	GIT_AUTHOR_NAME=Rodent git commit -m "rodent" &&
-	git checkout --detach master &&
-	(git cherry-pick HEAD@{1} || test $? -eq 1) &&
-	git show HEAD@{1}:rodent > rodent &&
-	git add rodent &&
-	git blame -f -C -C1 rodent | sed -e "$pick_fc" >current &&
-	cat >expected <<-\EOF &&
-	mouse-Initial
-	mouse-Second
-	rodent-Not
-	EOF
-	test_cmp expected current
-'
-
-test_expect_success 'blame path that used to be a directory' '
-	mkdir path &&
-	echo A A A A A >path/file &&
-	echo B B B B B >path/elif &&
-	git add path &&
-	test_tick &&
-	git commit -m "path was a directory" &&
-	rm -fr path &&
-	echo A A A A A >path &&
-	git add path &&
-	test_tick &&
-	git commit -m "path is a regular file" &&
-	git blame HEAD^.. -- path
-'
-
-test_expect_success 'blame to a commit with no author name' '
-  TREE=$(git rev-parse HEAD:) &&
-  cat >badcommit <<EOF &&
-tree $TREE
-author <noname> 1234567890 +0000
-committer David Reiss <dreiss@facebook.com> 1234567890 +0000
-
-some message
-EOF
-  COMMIT=$(git hash-object -t commit -w badcommit) &&
-  git --no-pager blame $COMMIT -- uno >/dev/null
-'
-
-test_expect_success 'blame -L with invalid start' '
-	test_must_fail git blame -L5 tres 2>errors &&
-	test_i18ngrep "has only 2 lines" errors
-'
-
-test_expect_success 'blame -L with invalid end' '
-	git blame -L1,5 tres >out &&
-	test_line_count = 2 out
-'
-
-test_expect_success 'blame parses <end> part of -L' '
-	git blame -L1,1 tres >out &&
-	test_line_count = 1 out
-'
-
-test_expect_success 'blame -Ln,-(n+1)' '
-	git blame -L3,-4 nine_lines >out &&
-	test_line_count = 3 out
-'
-
-test_expect_success 'indent of line numbers, nine lines' '
-	git blame nine_lines >actual &&
-	test $(grep -c "  " actual) = 0
-'
-
-test_expect_success 'indent of line numbers, ten lines' '
-	git blame ten_lines >actual &&
-	test $(grep -c "  " actual) = 9
-'
-
-test_expect_success 'setup file with CRLF newlines' '
-	git config core.autocrlf false &&
-	printf "testcase\n" >crlffile &&
-	git add crlffile &&
-	git commit -m testcase &&
-	printf "testcase\r\n" >crlffile
-'
-
-test_expect_success 'blame file with CRLF core.autocrlf true' '
-	git config core.autocrlf true &&
-	git blame crlffile >actual &&
-	grep "A U Thor" actual
-'
-
-test_expect_success 'blame file with CRLF attributes text' '
-	git config core.autocrlf false &&
-	echo "crlffile text" >.gitattributes &&
-	git blame crlffile >actual &&
-	grep "A U Thor" actual
-'
-
-test_expect_success 'blame file with CRLF core.autocrlf=true' '
-	git config core.autocrlf false &&
-	printf "testcase\r\n" >crlfinrepo &&
-	>.gitattributes &&
-	git add crlfinrepo &&
-	git commit -m "add crlfinrepo" &&
-	git config core.autocrlf true &&
-	mv crlfinrepo tmp &&
-	git checkout crlfinrepo &&
-	rm tmp &&
-	git blame crlfinrepo >actual &&
-	grep "A U Thor" actual
-'
-
-test_expect_success 'setup coalesce tests' '
-	cat >giraffe <<-\EOF &&
-	ABC
-	DEF
-	EOF
-	git add giraffe &&
-	git commit -m "original file" &&
-	orig=$(git rev-parse HEAD) &&
-
-	cat >giraffe <<-\EOF &&
-	ABC
-	SPLIT
-	DEF
-	EOF
-	git add giraffe &&
-	git commit -m "interior SPLIT line" &&
-	split=$(git rev-parse HEAD) &&
-
-	cat >giraffe <<-\EOF &&
-	ABC
-	DEF
-	EOF
-	git add giraffe &&
-	git commit -m "same contents as original" &&
-	final=$(git rev-parse HEAD)
-'
-
-test_expect_success 'blame coalesce' '
-	cat >expect <<-EOF &&
-	$orig 1 1 2
-	$orig 2 2
-	EOF
-	git blame --porcelain $final giraffe >actual.raw &&
-	grep "^$orig" actual.raw >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'blame does not coalesce non-adjacent result lines' '
-	cat >expect <<-EOF &&
-	$orig 1) ABC
-	$orig 3) DEF
-	EOF
-	git blame --no-abbrev -s -L1,1 -L3,3 $split giraffe >actual &&
-	test_cmp expect actual
-'
-
-test_done