commit-graph: define GIT_TEST_COMMIT_GRAPH
[git/git.git] / t / t5307-pack-missing-commit.sh
CommitLineData
ed62089c
JH
1#!/bin/sh
2
3test_description='pack should notice missing commit objects'
4
5. ./test-lib.sh
6
7test_expect_success setup '
8 for i in 1 2 3 4 5
9 do
10 echo "$i" >"file$i" &&
11 git add "file$i" &&
12 test_tick &&
13 git commit -m "$i" &&
14 git tag "tag$i"
15 done &&
16 obj=$(git rev-parse --verify tag3) &&
17 fanout=$(expr "$obj" : "\(..\)") &&
18 remainder=$(expr "$obj" : "..\(.*\)") &&
19 rm -f ".git/objects/$fanout/$remainder"
20'
21
22test_expect_success 'check corruption' '
23 test_must_fail git fsck
24'
25
26test_expect_success 'rev-list notices corruption (1)' '
859fdc0c 27 test_must_fail env GIT_TEST_COMMIT_GRAPH=0 git rev-list HEAD
ed62089c
JH
28'
29
30test_expect_success 'rev-list notices corruption (2)' '
859fdc0c 31 test_must_fail env GIT_TEST_COMMIT_GRAPH=0 git rev-list --objects HEAD
ed62089c
JH
32'
33
34test_expect_success 'pack-objects notices corruption' '
35 echo HEAD |
36 test_must_fail git pack-objects --revs pack
37'
38
39test_done