read-cache.c: make $GIT_TEST_SPLIT_INDEX boolean

While at there, document about this special mode when running the test
suite.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Nguyễn Thái Ngọc Duy 2018-04-14 17:34:59 +02:00 committed by Junio C Hamano
parent fe0a9eaf31
commit 4c2db93807
3 changed files with 14 additions and 3 deletions

View File

@ -11,7 +11,7 @@ make --jobs=2
make --quiet test
if test "$jobname" = "linux-gcc"
then
GIT_TEST_SPLIT_INDEX=YesPlease make --quiet test
GIT_TEST_SPLIT_INDEX=yes make --quiet test
fi
check_unignored_build_artifacts

View File

@ -2268,7 +2268,7 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile,
if (!istate->version) {
istate->version = get_index_format_default();
if (getenv("GIT_TEST_SPLIT_INDEX"))
if (git_env_bool("GIT_TEST_SPLIT_INDEX", 0))
init_split_index(istate);
}
@ -2559,7 +2559,7 @@ int write_locked_index(struct index_state *istate, struct lock_file *lock,
goto out;
}
if (getenv("GIT_TEST_SPLIT_INDEX")) {
if (git_env_bool("GIT_TEST_SPLIT_INDEX", 0)) {
int v = si->base_sha1[0];
if ((v & 15) < 6)
istate->cache_changed |= SPLIT_INDEX_ORDERED;

View File

@ -293,6 +293,17 @@ and know what setup is needed for it. Or when you want to run
everything up to a certain test.
Running tests with special setups
---------------------------------
The whole test suite could be run to test some special features
that cannot be easily covered by a few specific test cases. These
could be enabled by running the test suite with correct GIT_TEST_
environment set.
GIT_TEST_SPLIT_INDEX=<boolean> forces split-index mode on the whole
test suite. Accept any boolean values that are accepted by git-config.
Naming Tests
------------