lib-submodule-update: prepend "git" to $command

Since all invocations of test_submodule_forced_switch() are git
commands, automatically prepend "git" before invoking
test_submodule_switch_common().

Similarly, many invocations of test_submodule_switch() are also git
commands so automatically prepend "git" before invoking
test_submodule_switch_common() as well.

Finally, for invocations of test_submodule_switch() that invoke a custom
function, rename the old function to test_submodule_switch_func().

This is necessary because in a future commit, we will be adding some
logic that needs to distinguish between an invocation of a plain git
comamnd and an invocation of a test helper function.

Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Denton Liu 2020-06-11 13:41:49 -04:00 committed by Junio C Hamano
parent add2452348
commit aa06180ac9
13 changed files with 34 additions and 30 deletions

View file

@ -307,8 +307,8 @@ test_submodule_content () {
# to protect the history!
#
# Internal function; use test_submodule_switch() or
# test_submodule_forced_switch() instead.
# Internal function; use test_submodule_switch_func(), test_submodule_switch(),
# or test_submodule_forced_switch() instead.
test_submodule_switch_common () {
command="$1"
######################### Appearing submodule #########################
@ -566,8 +566,8 @@ test_submodule_switch_common () {
# # Do something here that updates the worktree and index to match target,
# # but not any submodule directories.
# }
# test_submodule_switch "my_func"
test_submodule_switch () {
# test_submodule_switch_func "my_func"
test_submodule_switch_func () {
command="$1"
test_submodule_switch_common "$command"
@ -587,12 +587,16 @@ test_submodule_switch () {
'
}
test_submodule_switch () {
test_submodule_switch_func "git $1"
}
# Same as test_submodule_switch(), except that throwing away local changes in
# the superproject is allowed.
test_submodule_forced_switch () {
command="$1"
KNOWN_FAILURE_FORCED_SWITCH_TESTS=1
test_submodule_switch_common "$command"
test_submodule_switch_common "git $command"
# When forced, a file in the superproject does not prevent creating a
# submodule of the same name.

View file

@ -12,8 +12,8 @@ test_submodule_switch_recursing_with_args "read-tree -u -m"
test_submodule_forced_switch_recursing_with_args "read-tree -u --reset"
test_submodule_switch "git read-tree -u -m"
test_submodule_switch "read-tree -u -m"
test_submodule_forced_switch "git read-tree -u --reset"
test_submodule_forced_switch "read-tree -u --reset"
test_done

View file

@ -68,8 +68,8 @@ test_submodule_switch_recursing_with_args "checkout"
test_submodule_forced_switch_recursing_with_args "checkout -f"
test_submodule_switch "git checkout"
test_submodule_switch "checkout"
test_submodule_forced_switch "git checkout -f"
test_submodule_forced_switch "checkout -f"
test_done

View file

@ -20,7 +20,7 @@ git_rebase () {
git rebase "$1"
}
test_submodule_switch "git_rebase"
test_submodule_switch_func "git_rebase"
git_rebase_interactive () {
git status -su >expect &&
@ -38,7 +38,7 @@ git_rebase_interactive () {
git rebase -i "$1"
}
test_submodule_switch "git_rebase_interactive"
test_submodule_switch_func "git_rebase_interactive"
test_expect_success 'rebase interactive ignores modified submodules' '
test_when_finished "rm -rf super sub" &&

View file

@ -7,7 +7,7 @@ test_description='cherry-pick can handle submodules'
KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1
KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES=1
test_submodule_switch "git cherry-pick"
test_submodule_switch "cherry-pick"
test_expect_success 'unrelated submodule/file conflict is ignored' '
test_create_repo sub &&

View file

@ -26,6 +26,6 @@ git_revert () {
}
KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1
test_submodule_switch "git_revert"
test_submodule_switch_func "git_revert"
test_done

View file

@ -19,7 +19,7 @@ git_stash () {
KNOWN_FAILURE_STASH_DOES_IGNORE_SUBMODULE_CHANGES=1
KNOWN_FAILURE_CHERRY_PICK_SEES_EMPTY_COMMIT=1
KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1
test_submodule_switch "git_stash"
test_submodule_switch_func "git_stash"
setup_basic () {
test_when_finished "rm -rf main sub" &&

View file

@ -9,12 +9,12 @@ apply_index () {
git diff --ignore-submodules=dirty "..$1" | git apply --index -
}
test_submodule_switch "apply_index"
test_submodule_switch_func "apply_index"
apply_3way () {
git diff --ignore-submodules=dirty "..$1" | git apply --3way -
}
test_submodule_switch "apply_3way"
test_submodule_switch_func "apply_3way"
test_done

View file

@ -9,14 +9,14 @@ am () {
git format-patch --stdout --ignore-submodules=dirty "..$1" | git am -
}
test_submodule_switch "am"
test_submodule_switch_func "am"
am_3way () {
git format-patch --stdout --ignore-submodules=dirty "..$1" | git am --3way -
}
KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES=1
test_submodule_switch "am_3way"
test_submodule_switch_func "am_3way"
test_expect_success 'setup diff.submodule' '
test_commit one &&

View file

@ -17,21 +17,21 @@ git_pull () {
}
# pulls without conflicts
test_submodule_switch "git_pull"
test_submodule_switch_func "git_pull"
git_pull_ff () {
reset_branch_to_HEAD "$1" &&
git pull --ff
}
test_submodule_switch "git_pull_ff"
test_submodule_switch_func "git_pull_ff"
git_pull_ff_only () {
reset_branch_to_HEAD "$1" &&
git pull --ff-only
}
test_submodule_switch "git_pull_ff_only"
test_submodule_switch_func "git_pull_ff_only"
git_pull_noff () {
reset_branch_to_HEAD "$1" &&
@ -40,7 +40,7 @@ git_pull_noff () {
KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1
KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES=1
test_submodule_switch "git_pull_noff"
test_submodule_switch_func "git_pull_noff"
test_expect_success 'pull --recurse-submodule setup' '
test_create_repo child &&

View file

@ -27,6 +27,6 @@ git_bisect () {
git bisect bad $BAD
}
test_submodule_switch "git_bisect"
test_submodule_switch_func "git_bisect"
test_done

View file

@ -13,10 +13,10 @@ test_submodule_switch_recursing_with_args "reset --keep"
test_submodule_forced_switch_recursing_with_args "reset --hard"
test_submodule_switch "git reset --keep"
test_submodule_switch "reset --keep"
test_submodule_switch "git reset --merge"
test_submodule_switch "reset --merge"
test_submodule_forced_switch "git reset --hard"
test_submodule_forced_switch "reset --hard"
test_done

View file

@ -6,14 +6,14 @@ test_description='merge can handle submodules'
. "$TEST_DIRECTORY"/lib-submodule-update.sh
# merges without conflicts
test_submodule_switch "git merge"
test_submodule_switch "merge"
test_submodule_switch "git merge --ff"
test_submodule_switch "merge --ff"
test_submodule_switch "git merge --ff-only"
test_submodule_switch "merge --ff-only"
KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1
KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES=1
test_submodule_switch "git merge --no-ff"
test_submodule_switch "merge --no-ff"
test_done