git/t/t3008-ls-files-lazy-init-name-hash.sh
Kevin Willford 845eec2b64 t3008: skip lazy-init test on a single-core box
The lazy-init codepath will not be exercised uniless threaded.  Skip
the entire test on a single-core box.  Also replace a hard-coded
constant of 2000 (number of cache entries to manifacture for tests)
with a variable with a human readable name.

Signed-off-by: Kevin Willford <kewillf@microsoft.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2017-04-12 23:24:36 -07:00

28 lines
609 B
Bash
Executable File

#!/bin/sh
test_description='Test the lazy init name hash with various folder structures'
. ./test-lib.sh
if test 1 -eq $($GIT_BUILD_DIR/t/helper/test-online-cpus)
then
skip_all='skipping lazy-init tests, single cpu'
test_done
fi
LAZY_THREAD_COST=2000
test_expect_success 'no buffer overflow in lazy_init_name_hash' '
(
test_seq $LAZY_THREAD_COST | sed "s/^/a_/"
echo b/b/b
test_seq $LAZY_THREAD_COST | sed "s/^/c_/"
test_seq 50 | sed "s/^/d_/" | tr "\n" "/"; echo d
) |
sed "s/^/100644 $EMPTY_BLOB /" |
git update-index --index-info &&
test-lazy-init-name-hash -m
'
test_done