aboutsummaryrefslogtreecommitdiffstats
path: root/t/t6022-rev-list-missing.sh
diff options
context:
space:
mode:
Diffstat (limited to 't/t6022-rev-list-missing.sh')
-rwxr-xr-xt/t6022-rev-list-missing.sh24
1 files changed, 18 insertions, 6 deletions
diff --git a/t/t6022-rev-list-missing.sh b/t/t6022-rev-list-missing.sh
index 78387eebb3..127180e1c9 100755
--- a/t/t6022-rev-list-missing.sh
+++ b/t/t6022-rev-list-missing.sh
@@ -10,7 +10,10 @@ TEST_PASSES_SANITIZE_LEAK=true
test_expect_success 'create repository and alternate directory' '
test_commit 1 &&
test_commit 2 &&
- test_commit 3
+ test_commit 3 &&
+ git tag -m "tag message" annot_tag HEAD~1 &&
+ git tag regul_tag HEAD~1 &&
+ git branch a_branch HEAD~1
'
# We manually corrupt the repository, which means that the commit-graph may
@@ -78,7 +81,7 @@ do
done
done
-for missing_tip in "HEAD~1" "HEAD~1^{tree}" "HEAD:1.t"
+for missing_tip in "annot_tag" "regul_tag" "a_branch" "HEAD~1" "HEAD~1^{tree}" "HEAD:1.t"
do
# We want to check that things work when both
# - all the tips passed are missing (case existing_tip = ""), and
@@ -88,9 +91,6 @@ do
for action in "allow-any" "print"
do
test_expect_success "--missing=$action with tip '$missing_tip' missing and tip '$existing_tip'" '
- oid="$(git rev-parse $missing_tip)" &&
- path=".git/objects/$(test_oid_to_path $oid)" &&
-
# Before the object is made missing, we use rev-list to
# get the expected oids.
if test "$existing_tip" = "HEAD"
@@ -109,11 +109,23 @@ do
echo $(git rev-parse HEAD:2.t) >>expect.raw
fi &&
+ missing_oid="$(git rev-parse $missing_tip)" &&
+
+ if test "$missing_tip" = "annot_tag"
+ then
+ oid="$(git rev-parse $missing_tip^{commit})" &&
+ echo "$missing_oid" >>expect.raw
+ else
+ oid="$missing_oid"
+ fi &&
+
+ path=".git/objects/$(test_oid_to_path $oid)" &&
+
mv "$path" "$path.hidden" &&
test_when_finished "mv $path.hidden $path" &&
git rev-list --missing=$action --objects --no-object-names \
- $oid $existing_tip >actual.raw &&
+ $missing_oid $existing_tip >actual.raw &&
# When the action is to print, we should also add the missing
# oid to the expect list.