pack-objects & index-pack: add test for --threads warning

Add a test for the warning that's emitted when --threads or pack.threads is provided under NO_PTHREADS=YesPlease. This uses the new PTHREADS prerequisite. The assertion for C_LOCALE_OUTPUT in the latter test is currently redundant, since unlike index-pack the pack-objects warnings aren't i18n'd. However they might be changed to be i18n'd in the future, and there's no harm in future-proofing the test. There's an existing bug in the implementation of pack-objects which this test currently tests for as-is. Details about the bug & the fix are included in a follow-up change. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Ævar Arnfjörð Bjarmason committed May 25, 2017 at 19:45 UTC 967a3eaf432db124cabaa4595677063d5b931ff8
1 file changed +36
t/t5300-pack-object.sh
+36
@@ -421,6 +421,42 @@ test_expect_success 'index-pack <pack> works in non-repo' '
421 test_path_is_file foo.idx
422 '
423
424 +test_expect_success !PTHREADS,C_LOCALE_OUTPUT 'index-pack --threads=N or pack.threads=N warns when no pthreads' '
425 + test_must_fail git index-pack --threads=2 2>err &&
426 + grep ^warning: err >warnings &&
427 + test_line_count = 1 warnings &&
428 + grep -F "no threads support, ignoring --threads=2" err &&
429 +
430 + test_must_fail git -c pack.threads=2 index-pack 2>err &&
431 + grep ^warning: err >warnings &&
432 + test_line_count = 1 warnings &&
433 + grep -F "no threads support, ignoring pack.threads" err &&
434 +
435 + test_must_fail git -c pack.threads=2 index-pack --threads=4 2>err &&
436 + grep ^warning: err >warnings &&
437 + test_line_count = 2 warnings &&
438 + grep -F "no threads support, ignoring --threads=4" err &&
439 + grep -F "no threads support, ignoring pack.threads" err
440 +'
441 +
442 +test_expect_success !PTHREADS,C_LOCALE_OUTPUT 'pack-objects --threads=N or pack.threads=N warns when no pthreads' '
443 + git pack-objects --threads=2 --stdout --all </dev/null >/dev/null 2>err &&
444 + grep ^warning: err >warnings &&
445 + test_line_count = 1 warnings &&
446 + grep -F "no threads support, ignoring --threads" err &&
447 +
448 + git -c pack.threads=2 pack-objects --stdout --all </dev/null >/dev/null 2>err &&
449 + grep ^warning: err >warnings &&
450 + test_must_fail test_line_count = 1 warnings &&
451 + grep -F "no threads support, ignoring pack.threads" err &&
452 +
453 + git -c pack.threads=2 pack-objects --threads=4 --stdout --all </dev/null >/dev/null 2>err &&
454 + grep ^warning: err >warnings &&
455 + test_line_count = 2 warnings &&
456 + grep -F "no threads support, ignoring --threads" err &&
457 + grep -F "no threads support, ignoring pack.threads" err
458 +'
459 +
460 #
461 # WARNING!
462 #