| test_description='pack should notice missing commit objects' |
| TEST_PASSES_SANITIZE_LEAK=true |
| test_expect_success setup ' |
| git tag "tag$i" || return 1 |
| obj=$(git rev-parse --verify tag3) && |
| fanout=$(expr "$obj" : "\(..\)") && |
| remainder=$(expr "$obj" : "..\(.*\)") && |
| rm -f ".git/objects/$fanout/$remainder" |
| test_expect_success 'check corruption' ' |
| test_expect_success 'rev-list notices corruption (1)' ' |
| test_must_fail env GIT_TEST_COMMIT_GRAPH=0 git -c core.commitGraph=false rev-list HEAD |
| test_expect_success 'rev-list notices corruption (2)' ' |
| test_must_fail env GIT_TEST_COMMIT_GRAPH=0 git -c core.commitGraph=false rev-list --objects HEAD |
| test_expect_success 'pack-objects notices corruption' ' |
| test_must_fail git pack-objects --revs pack |