зеркало из https://github.com/microsoft/git.git
test-lib: prevent '--stress-jobs=X' from being ignored
'./t1234-foo.sh --stress-jobs=X ...' is supposed to run that test script in X parallel jobs, but the number of jobs specified on the command line is entirely ignored if other '--stress'-related options follow. I.e. both './t1234-foo.sh --stress-jobs=X --stress-limit=Y' and './t1234-foo.sh --stress-jobs=X --stress' fall back to using twice the number of CPUs parallel jobs instead. The former has been broken since commitde69e6f6c9
(tests: let --stress-limit=<N> imply --stress, 2019-03-03) [1], which started to unconditionally overwrite the $stress variable holding the specified number of jobs in its effort to imply '--stress'. The latter has been broken sincef545737144
(tests: introduce --stress-jobs=<N>, 2019-03-03), because it didn't consider that handling '--stress' will overwrite that variable as well. We could fix this by being more careful about (over)writing that $stress variable and checking first whether it has already been set. But I think it's cleaner to use a dedicated variable to hold the number of specified parallel jobs, so let's do that instead. [1] Inde69e6f6c9
there was no '--stress-jobs=X' option yet, the number of parallel jobs had to be specified via '--stress=X', so, strictly speaking,de69e6f6c9
broke './t1234-foo.sh --stress=X --stress-limit=Y'. Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
e6362826a0
Коммит
134768cf53
|
@ -163,8 +163,8 @@ parse_option () {
|
|||
;;
|
||||
--stress-jobs=*)
|
||||
stress=t;
|
||||
stress=${opt#--*=}
|
||||
case "$stress" in
|
||||
stress_jobs=${opt#--*=}
|
||||
case "$stress_jobs" in
|
||||
*[!0-9]*|0*|"")
|
||||
echo "error: --stress-jobs=<N> requires the number of jobs to run" >&2
|
||||
exit 1
|
||||
|
@ -262,9 +262,9 @@ then
|
|||
: # Don't stress test again.
|
||||
elif test -n "$stress"
|
||||
then
|
||||
if test "$stress" != t
|
||||
if test -n "$stress_jobs"
|
||||
then
|
||||
job_count=$stress
|
||||
job_count=$stress_jobs
|
||||
elif test -n "$GIT_TEST_STRESS_LOAD"
|
||||
then
|
||||
job_count="$GIT_TEST_STRESS_LOAD"
|
||||
|
|
Загрузка…
Ссылка в новой задаче