}
test_configured_prune () {
- fetch_prune=$1 remote_origin_prune=$2 cmdline=$3 expected=$4
+ fetch_prune=$1
+ remote_origin_prune=$2
+ expected_branch=$3
+ cmdline=$4
- test_expect_success "prune fetch.prune=$1 remote.origin.prune=$2${3:+ $3}; $4" '
+ test_expect_success "prune fetch.prune=$1 remote.origin.prune=$2${4:+ $4}; branch:$3" '
# make sure a newbranch is there in . and also in one
git branch -f newbranch &&
(
set_config_tristate remote.origin.prune $remote_origin_prune &&
git fetch $cmdline &&
- case "$expected" in
+ case "$expected_branch" in
pruned)
test_must_fail git rev-parse --verify refs/remotes/origin/newbranch
;;
'
}
-test_configured_prune unset unset "" kept
-test_configured_prune unset unset "--no-prune" kept
-test_configured_prune unset unset "--prune" pruned
+# $1 config: fetch.prune
+# $2 config: remote.<name>.prune
+# $3 expect: branch to be pruned?
+# $4 git-fetch $cmdline:
+#
+# $1 $2 $3 $4
+test_configured_prune unset unset kept ""
+test_configured_prune unset unset kept "--no-prune"
+test_configured_prune unset unset pruned "--prune"
-test_configured_prune false unset "" kept
-test_configured_prune false unset "--no-prune" kept
-test_configured_prune false unset "--prune" pruned
+test_configured_prune false unset kept ""
+test_configured_prune false unset kept "--no-prune"
+test_configured_prune false unset pruned "--prune"
-test_configured_prune true unset "" pruned
-test_configured_prune true unset "--prune" pruned
-test_configured_prune true unset "--no-prune" kept
+test_configured_prune true unset pruned ""
+test_configured_prune true unset pruned "--prune"
+test_configured_prune true unset kept "--no-prune"
-test_configured_prune unset false "" kept
-test_configured_prune unset false "--no-prune" kept
-test_configured_prune unset false "--prune" pruned
+test_configured_prune unset false kept ""
+test_configured_prune unset false kept "--no-prune"
+test_configured_prune unset false pruned "--prune"
-test_configured_prune false false "" kept
-test_configured_prune false false "--no-prune" kept
-test_configured_prune false false "--prune" pruned
+test_configured_prune false false kept ""
+test_configured_prune false false kept "--no-prune"
+test_configured_prune false false pruned "--prune"
-test_configured_prune true false "" kept
-test_configured_prune true false "--prune" pruned
-test_configured_prune true false "--no-prune" kept
+test_configured_prune true false kept ""
+test_configured_prune true false pruned "--prune"
+test_configured_prune true false kept "--no-prune"
-test_configured_prune unset true "" pruned
-test_configured_prune unset true "--no-prune" kept
-test_configured_prune unset true "--prune" pruned
+test_configured_prune unset true pruned ""
+test_configured_prune unset true kept "--no-prune"
+test_configured_prune unset true pruned "--prune"
-test_configured_prune false true "" pruned
-test_configured_prune false true "--no-prune" kept
-test_configured_prune false true "--prune" pruned
+test_configured_prune false true pruned ""
+test_configured_prune false true kept "--no-prune"
+test_configured_prune false true pruned "--prune"
-test_configured_prune true true "" pruned
-test_configured_prune true true "--prune" pruned
-test_configured_prune true true "--no-prune" kept
+test_configured_prune true true pruned ""
+test_configured_prune true true pruned "--prune"
+test_configured_prune true true kept "--no-prune"
test_expect_success 'all boundary commits are excluded' '
test_commit base &&
git fetch --prune origin 2>&1 | head -n1 >../actual
) &&
echo "From ${D}/." >expect &&
- test_cmp expect actual
+ test_i18ncmp expect actual
'
test_expect_success 'branchname D/F conflict resolved by --prune' '
)
'
+test_expect_success C_LOCALE_OUTPUT 'fetch aligned output' '
+ git clone . full-output &&
+ test_commit looooooooooooong-tag &&
+ (
+ cd full-output &&
+ git -c fetch.output=full fetch origin 2>&1 | \
+ grep -e "->" | cut -c 22- >../actual
+ ) &&
+ cat >expect <<-\EOF &&
+ master -> origin/master
+ looooooooooooong-tag -> looooooooooooong-tag
+ EOF
+ test_cmp expect actual
+'
+
+test_expect_success C_LOCALE_OUTPUT 'fetch compact output' '
+ git clone . compact &&
+ test_commit extraaa &&
+ (
+ cd compact &&
+ git -c fetch.output=compact fetch origin 2>&1 | \
+ grep -e "->" | cut -c 22- >../actual
+ ) &&
+ cat >expect <<-\EOF &&
+ master -> origin/*
+ extraaa -> *
+ EOF
+ test_cmp expect actual
+'
+
test_done