mirror of
https://github.com/git/git.git
synced 2024-11-27 20:14:30 +08:00
t: prepare for GIT_TEST_WRITE_REV_INDEX
In the next patch, we'll add support for unconditionally enabling the 'pack.writeReverseIndex' setting with a new GIT_TEST_WRITE_REV_INDEX environment variable. This causes a little bit of fallout with tests that, for example, compare the list of files in the pack directory being unprepared to see .rev files in its output. Those locations can be cleaned up to look for specific file extensions, rather than take everything in the pack directory (for instance) and then grep out unwanted items. Once the pack.writeReverseIndex option has been thoroughly tested, we will default it to 'true', removing GIT_TEST_WRITE_REV_INDEX, and making it possible to revert this patch. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
1615c567b8
commit
35a8a3547a
@ -710,8 +710,9 @@ test_expect_success 'expire respects .keep files' '
|
||||
PACKA=$(ls .git/objects/pack/a-pack*\.pack | sed s/\.pack\$//) &&
|
||||
touch $PACKA.keep &&
|
||||
git multi-pack-index expire &&
|
||||
ls -S .git/objects/pack/a-pack* | grep $PACKA >a-pack-files &&
|
||||
test_line_count = 3 a-pack-files &&
|
||||
test_path_is_file $PACKA.idx &&
|
||||
test_path_is_file $PACKA.keep &&
|
||||
test_path_is_file $PACKA.pack &&
|
||||
test-tool read-midx .git/objects | grep idx >midx-list &&
|
||||
test_line_count = 2 midx-list
|
||||
)
|
||||
|
@ -3,6 +3,10 @@
|
||||
test_description='on-disk reverse index'
|
||||
. ./test-lib.sh
|
||||
|
||||
# The below tests want control over the 'pack.writeReverseIndex' setting
|
||||
# themselves to assert various combinations of it with other options.
|
||||
sane_unset GIT_TEST_WRITE_REV_INDEX
|
||||
|
||||
packdir=.git/objects/pack
|
||||
|
||||
test_expect_success 'setup' '
|
||||
|
@ -329,7 +329,7 @@ test_expect_success SYMLINKS 'clone repo with symlinked or unknown files at obje
|
||||
for raw in $(ls T*.raw)
|
||||
do
|
||||
sed -e "s!/../!/Y/!; s![0-9a-f]\{38,\}!Z!" -e "/commit-graph/d" \
|
||||
-e "/multi-pack-index/d" <$raw >$raw.de-sha-1 &&
|
||||
-e "/multi-pack-index/d" -e "/rev/d" <$raw >$raw.de-sha-1 &&
|
||||
sort $raw.de-sha-1 >$raw.de-sha || return 1
|
||||
done &&
|
||||
|
||||
|
@ -851,8 +851,10 @@ test_expect_success 'part of packfile response provided as URI' '
|
||||
test -f h2found &&
|
||||
|
||||
# Ensure that there are exactly 6 files (3 .pack and 3 .idx).
|
||||
ls http_child/.git/objects/pack/* >filelist &&
|
||||
test_line_count = 6 filelist
|
||||
ls http_child/.git/objects/pack/*.pack >packlist &&
|
||||
ls http_child/.git/objects/pack/*.idx >idxlist &&
|
||||
test_line_count = 3 idxlist &&
|
||||
test_line_count = 3 packlist
|
||||
'
|
||||
|
||||
test_expect_success 'fetching with valid packfile URI but invalid hash fails' '
|
||||
@ -905,8 +907,10 @@ test_expect_success 'packfile-uri with transfer.fsckobjects' '
|
||||
clone "$HTTPD_URL/smart/http_parent" http_child &&
|
||||
|
||||
# Ensure that there are exactly 4 files (2 .pack and 2 .idx).
|
||||
ls http_child/.git/objects/pack/* >filelist &&
|
||||
test_line_count = 4 filelist
|
||||
ls http_child/.git/objects/pack/*.pack >packlist &&
|
||||
ls http_child/.git/objects/pack/*.idx >idxlist &&
|
||||
test_line_count = 2 idxlist &&
|
||||
test_line_count = 2 packlist
|
||||
'
|
||||
|
||||
test_expect_success 'packfile-uri with transfer.fsckobjects fails on bad object' '
|
||||
|
@ -106,17 +106,17 @@ test_expect_success 'auto gc with too many loose objects does not attempt to cre
|
||||
test_commit "$(test_oid obj2)" &&
|
||||
# Our first gc will create a pack; our second will create a second pack
|
||||
git gc --auto &&
|
||||
ls .git/objects/pack | sort >existing_packs &&
|
||||
ls .git/objects/pack/pack-*.pack | sort >existing_packs &&
|
||||
test_commit "$(test_oid obj3)" &&
|
||||
test_commit "$(test_oid obj4)" &&
|
||||
|
||||
git gc --auto 2>err &&
|
||||
test_i18ngrep ! "^warning:" err &&
|
||||
ls .git/objects/pack/ | sort >post_packs &&
|
||||
ls .git/objects/pack/pack-*.pack | sort >post_packs &&
|
||||
comm -1 -3 existing_packs post_packs >new &&
|
||||
comm -2 -3 existing_packs post_packs >del &&
|
||||
test_line_count = 0 del && # No packs are deleted
|
||||
test_line_count = 2 new # There is one new pack and its .idx
|
||||
test_line_count = 1 new # There is one new pack
|
||||
'
|
||||
|
||||
test_expect_success 'gc --no-quiet' '
|
||||
|
@ -1632,7 +1632,10 @@ test_expect_success 'O: blank lines not necessary after other commands' '
|
||||
INPUT_END
|
||||
|
||||
git fast-import <input &&
|
||||
test 8 = $(find .git/objects/pack -type f | grep -v multi-pack-index | wc -l) &&
|
||||
ls -la .git/objects/pack/pack-*.pack >packlist &&
|
||||
ls -la .git/objects/pack/pack-*.pack >idxlist &&
|
||||
test_line_count = 4 idxlist &&
|
||||
test_line_count = 4 packlist &&
|
||||
test $(git rev-parse refs/tags/O3-2nd) = $(git rev-parse O3^) &&
|
||||
git log --reverse --pretty=oneline O3 | sed s/^.*z// >actual &&
|
||||
test_cmp expect actual
|
||||
|
Loading…
Reference in New Issue
Block a user