mirror of
https://github.com/git/git.git
synced 2026-08-08 17:11:48 +00:00
Merge branch 'ps/t7900-deflake-maintenance' into seen
* ps/t7900-deflake-maintenance: t7900: fix flaky "maintenance.strategy" test t7900: adapt some tests to use a throwaway repository
This commit is contained in:
@@ -7,9 +7,6 @@ test_description='git maintenance builtin'
|
||||
GIT_TEST_COMMIT_GRAPH=0
|
||||
GIT_TEST_MULTI_PACK_INDEX=0
|
||||
|
||||
# Ensure that auto-maintenance detaches as usual.
|
||||
sane_unset GIT_TEST_MAINT_AUTO_DETACH
|
||||
|
||||
test_lazy_prereq XMLLINT '
|
||||
xmllint --version
|
||||
'
|
||||
@@ -67,41 +64,60 @@ test_expect_success 'run [--auto|--quiet] with gc strategy' '
|
||||
'
|
||||
|
||||
test_expect_success 'maintenance.auto config option' '
|
||||
GIT_TRACE2_EVENT="$(pwd)/default" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <default &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/true" \
|
||||
git -c maintenance.auto=true \
|
||||
commit --quiet --allow-empty -m 2 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <true &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/false" \
|
||||
git -c maintenance.auto=false \
|
||||
commit --quiet --allow-empty -m 3 &&
|
||||
test_subcommand ! git maintenance run --auto --quiet --detach <false
|
||||
test_when_finished "rm -rf repo" &&
|
||||
git init repo &&
|
||||
(
|
||||
cd repo &&
|
||||
sane_unset GIT_TEST_MAINT_AUTO_DETACH &&
|
||||
|
||||
GIT_TRACE2_EVENT="$(pwd)/default" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <default &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/true" \
|
||||
git -c maintenance.auto=true \
|
||||
commit --quiet --allow-empty -m 2 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <true &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/false" \
|
||||
git -c maintenance.auto=false \
|
||||
commit --quiet --allow-empty -m 3 &&
|
||||
test_subcommand ! git maintenance run --auto --quiet --detach <false
|
||||
)
|
||||
'
|
||||
|
||||
test_expect_success 'gc.auto config option' '
|
||||
GIT_TRACE2_EVENT="$(pwd)/default" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <default &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/true" \
|
||||
git -c gc.auto=1 commit --quiet --allow-empty -m 2 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <true &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/false" \
|
||||
git -c gc.auto=0 commit --quiet --allow-empty -m 3 &&
|
||||
test_subcommand ! git maintenance run --auto --quiet --detach <false
|
||||
test_when_finished "rm -rf repo" &&
|
||||
git init repo &&
|
||||
(
|
||||
cd repo &&
|
||||
sane_unset GIT_TEST_MAINT_AUTO_DETACH &&
|
||||
|
||||
GIT_TRACE2_EVENT="$(pwd)/default" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <default &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/true" \
|
||||
git -c gc.auto=1 commit --quiet --allow-empty -m 2 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <true &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/false" \
|
||||
git -c gc.auto=0 commit --quiet --allow-empty -m 3 &&
|
||||
test_subcommand ! git maintenance run --auto --quiet --detach <false
|
||||
)
|
||||
'
|
||||
|
||||
test_expect_success 'maintenance.auto overrides gc.auto' '
|
||||
test_when_finished "rm -f trace" &&
|
||||
test_when_finished "rm -rf repo" &&
|
||||
git init repo &&
|
||||
(
|
||||
cd repo &&
|
||||
sane_unset GIT_TEST_MAINT_AUTO_DETACH &&
|
||||
|
||||
test_config maintenance.auto false &&
|
||||
test_config gc.auto 1 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand ! git maintenance run --auto --quiet --detach <trace &&
|
||||
git config set maintenance.auto false &&
|
||||
git config set gc.auto 1 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand ! git maintenance run --auto --quiet --detach <trace &&
|
||||
|
||||
test_config maintenance.auto true &&
|
||||
test_config gc.auto 0 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <trace
|
||||
git config set maintenance.auto true &&
|
||||
git config set gc.auto 0 &&
|
||||
GIT_TRACE2_EVENT="$(pwd)/trace" git commit --quiet --allow-empty -m 1 &&
|
||||
test_subcommand git maintenance run --auto --quiet --detach <trace
|
||||
)
|
||||
'
|
||||
|
||||
for cfg in maintenance.autoDetach gc.autoDetach
|
||||
|
||||
Reference in New Issue
Block a user