about summary refs log tree commit diff
path: root/third_party/git/t/t1401-symbolic-ref.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/t1401-symbolic-ref.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/t1401-symbolic-ref.sh')
-rwxr-xr-xthird_party/git/t/t1401-symbolic-ref.sh163
1 files changed, 0 insertions, 163 deletions
diff --git a/third_party/git/t/t1401-symbolic-ref.sh b/third_party/git/t/t1401-symbolic-ref.sh
deleted file mode 100755
index a4ebb0b65fec..000000000000
--- a/third_party/git/t/t1401-symbolic-ref.sh
+++ /dev/null
@@ -1,163 +0,0 @@
-#!/bin/sh
-
-test_description='basic symbolic-ref tests'
-. ./test-lib.sh
-
-# If the tests munging HEAD fail, they can break detection of
-# the git repo, meaning that further tests will operate on
-# the surrounding git repo instead of the trash directory.
-reset_to_sane() {
-	echo ref: refs/heads/foo >.git/HEAD
-}
-
-test_expect_success 'symbolic-ref writes HEAD' '
-	git symbolic-ref HEAD refs/heads/foo &&
-	echo ref: refs/heads/foo >expect &&
-	test_cmp expect .git/HEAD
-'
-
-test_expect_success 'symbolic-ref reads HEAD' '
-	echo refs/heads/foo >expect &&
-	git symbolic-ref HEAD >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'symbolic-ref refuses non-ref for HEAD' '
-	test_must_fail git symbolic-ref HEAD foo
-'
-reset_to_sane
-
-test_expect_success 'symbolic-ref refuses bare sha1' '
-	echo content >file && git add file && git commit -m one &&
-	test_must_fail git symbolic-ref HEAD $(git rev-parse HEAD)
-'
-reset_to_sane
-
-test_expect_success 'HEAD cannot be removed' '
-	test_must_fail git symbolic-ref -d HEAD
-'
-
-reset_to_sane
-
-test_expect_success 'symbolic-ref can be deleted' '
-	git symbolic-ref NOTHEAD refs/heads/foo &&
-	git symbolic-ref -d NOTHEAD &&
-	test_path_is_file .git/refs/heads/foo &&
-	test_path_is_missing .git/NOTHEAD
-'
-reset_to_sane
-
-test_expect_success 'symbolic-ref can delete dangling symref' '
-	git symbolic-ref NOTHEAD refs/heads/missing &&
-	git symbolic-ref -d NOTHEAD &&
-	test_path_is_missing .git/refs/heads/missing &&
-	test_path_is_missing .git/NOTHEAD
-'
-reset_to_sane
-
-test_expect_success 'symbolic-ref fails to delete missing FOO' '
-	echo "fatal: Cannot delete FOO, not a symbolic ref" >expect &&
-	test_must_fail git symbolic-ref -d FOO >actual 2>&1 &&
-	test_cmp expect actual
-'
-reset_to_sane
-
-test_expect_success 'symbolic-ref fails to delete real ref' '
-	echo "fatal: Cannot delete refs/heads/foo, not a symbolic ref" >expect &&
-	test_must_fail git symbolic-ref -d refs/heads/foo >actual 2>&1 &&
-	git rev-parse --verify refs/heads/foo &&
-	test_cmp expect actual
-'
-reset_to_sane
-
-test_expect_success 'create large ref name' '
-	# make 256+ character ref; some systems may not handle that,
-	# so be gentle
-	long=0123456789abcdef &&
-	long=$long/$long/$long/$long &&
-	long=$long/$long/$long/$long &&
-	long_ref=refs/heads/$long &&
-	tree=$(git write-tree) &&
-	commit=$(echo foo | git commit-tree $tree) &&
-	if git update-ref $long_ref $commit; then
-		test_set_prereq LONG_REF
-	else
-		echo >&2 "long refs not supported"
-	fi
-'
-
-test_expect_success LONG_REF 'symbolic-ref can point to large ref name' '
-	git symbolic-ref HEAD $long_ref &&
-	echo $long_ref >expect &&
-	git symbolic-ref HEAD >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success LONG_REF 'we can parse long symbolic ref' '
-	echo $commit >expect &&
-	git rev-parse --verify HEAD >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'symbolic-ref reports failure in exit code' '
-	test_when_finished "rm -f .git/HEAD.lock" &&
-	>.git/HEAD.lock &&
-	test_must_fail git symbolic-ref HEAD refs/heads/whatever
-'
-
-test_expect_success 'symbolic-ref writes reflog entry' '
-	git checkout -b log1 &&
-	test_commit one &&
-	git checkout -b log2  &&
-	test_commit two &&
-	git checkout --orphan orphan &&
-	git symbolic-ref -m create HEAD refs/heads/log1 &&
-	git symbolic-ref -m update HEAD refs/heads/log2 &&
-	cat >expect <<-\EOF &&
-	update
-	create
-	EOF
-	git log --format=%gs -g -2 >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'symbolic-ref does not create ref d/f conflicts' '
-	git checkout -b df &&
-	test_commit df &&
-	test_must_fail git symbolic-ref refs/heads/df/conflict refs/heads/df &&
-	git pack-refs --all --prune &&
-	test_must_fail git symbolic-ref refs/heads/df/conflict refs/heads/df
-'
-
-test_expect_success 'symbolic-ref can overwrite pointer to invalid name' '
-	test_when_finished reset_to_sane &&
-	head=$(git rev-parse HEAD) &&
-	git symbolic-ref HEAD refs/heads/outer &&
-	test_when_finished "git update-ref -d refs/heads/outer/inner" &&
-	git update-ref refs/heads/outer/inner $head &&
-	git symbolic-ref HEAD refs/heads/unrelated
-'
-
-test_expect_success 'symbolic-ref can resolve d/f name (EISDIR)' '
-	test_when_finished reset_to_sane &&
-	head=$(git rev-parse HEAD) &&
-	git symbolic-ref HEAD refs/heads/outer/inner &&
-	test_when_finished "git update-ref -d refs/heads/outer" &&
-	git update-ref refs/heads/outer $head &&
-	echo refs/heads/outer/inner >expect &&
-	git symbolic-ref HEAD >actual &&
-	test_cmp expect actual
-'
-
-test_expect_success 'symbolic-ref can resolve d/f name (ENOTDIR)' '
-	test_when_finished reset_to_sane &&
-	head=$(git rev-parse HEAD) &&
-	git symbolic-ref HEAD refs/heads/outer &&
-	test_when_finished "git update-ref -d refs/heads/outer/inner" &&
-	git update-ref refs/heads/outer/inner $head &&
-	echo refs/heads/outer >expect &&
-	git symbolic-ref HEAD >actual &&
-	test_cmp expect actual
-'
-
-test_done