Merge branch 'jx/t5411-unique-filenames'

Avoid individual tests in t5411 from getting affected by each other
by forcing them to use separate output files during the test.

* jx/t5411-unique-filenames:
  t5411: refactor check of refs using test_cmp_refs
  t5411: use different out file to prevent overwriting
This commit is contained in:
Junio C Hamano 2021-02-17 17:21:42 -08:00
Родитель 9e634a91c8 822ee894f6
Коммит fdf3a27ca9
31 изменённых файлов: 224 добавлений и 362 удалений

Просмотреть файл

@ -58,3 +58,18 @@ filter_out_user_friendly_and_stable_output () {
make_user_friendly_and_stable_output | make_user_friendly_and_stable_output |
sed -n ${1+"$@"} sed -n ${1+"$@"}
} }
test_cmp_refs () {
indir=
if test "$1" = "-C"
then
shift
indir="$1"
shift
fi
indir=${indir:+"$indir"/}
cat >show-ref.expect &&
git ${indir:+ -C "$indir"} show-ref >show-ref.pristine &&
make_user_friendly_and_stable_output <show-ref.pristine >show-ref.filtered &&
test_cmp show-ref.expect show-ref.filtered
}

Просмотреть файл

@ -83,12 +83,9 @@ test_expect_success "proc-receive: report status v1" '
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/for/main/topic1 <COMMIT-A> refs/for/main/topic1
<COMMIT-A> refs/heads/foo <COMMIT-A> refs/heads/foo
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -19,13 +19,11 @@ test_expect_success "git-push ($PROTOCOL)" '
* [new branch] HEAD -> next * [new branch] HEAD -> next
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) next(A) # Refs of upstream : main(B) next(A)
@ -35,24 +33,22 @@ test_expect_success "git-push --atomic ($PROTOCOL)" '
test_must_fail git -C workbench push --atomic origin \ test_must_fail git -C workbench push --atomic origin \
main \ main \
$B:refs/heads/next \ $B:refs/heads/next \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^ ! / { p; }" \ -e "/^ ! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [rejected] main -> main (non-fast-forward) ! [rejected] main -> main (non-fast-forward)
! [rejected] <COMMIT-B> -> next (atomic push failed) ! [rejected] <COMMIT-B> -> next (atomic push failed)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) next(A) # Refs of upstream : main(B) next(A)
@ -65,8 +61,8 @@ test_expect_success "non-fast-forward git-push ($PROTOCOL)" '
push origin \ push origin \
main \ main \
$B:refs/heads/next \ $B:refs/heads/next \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/next remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/next
@ -77,13 +73,11 @@ test_expect_success "non-fast-forward git-push ($PROTOCOL)" '
! [rejected] main -> main (non-fast-forward) ! [rejected] main -> main (non-fast-forward)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
<COMMIT-B> refs/heads/next <COMMIT-B> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) next(B) # Refs of upstream : main(B) next(B)
@ -119,15 +113,13 @@ test_expect_success "git-push -f ($PROTOCOL)" '
* [new branch] HEAD -> a/b/c * [new branch] HEAD -> a/b/c
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/a/b/c <COMMIT-A> refs/heads/a/b/c
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/review/main/topic <COMMIT-A> refs/review/main/topic
<TAG-v123> refs/tags/v123 <TAG-v123> refs/tags/v123
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) tags/v123 refs/review/main/topic(A) a/b/c(A) # Refs of upstream : main(A) tags/v123 refs/review/main/topic(A) a/b/c(A)

Просмотреть файл

@ -20,13 +20,11 @@ test_expect_success "git-push ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) next(A) # Refs of upstream : main(B) next(A)
@ -36,25 +34,23 @@ test_expect_success "git-push --atomic ($PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --atomic --porcelain origin \ test_must_fail git -C workbench push --atomic --porcelain origin \
main \ main \
$B:refs/heads/next \ $B:refs/heads/next \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "s/^# GETTEXT POISON #//" \ -e "s/^# GETTEXT POISON #//" \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^! / { p; }" \ -e "/^! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! refs/heads/main:refs/heads/main [rejected] (non-fast-forward) ! refs/heads/main:refs/heads/main [rejected] (non-fast-forward)
! <COMMIT-B>:refs/heads/next [rejected] (atomic push failed) ! <COMMIT-B>:refs/heads/next [rejected] (atomic push failed)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) next(A) # Refs of upstream : main(B) next(A)
@ -67,8 +63,8 @@ test_expect_success "non-fast-forward git-push ($PROTOCOL/porcelain)" '
push --porcelain origin \ push --porcelain origin \
main \ main \
$B:refs/heads/next \ $B:refs/heads/next \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/next remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/next
@ -80,13 +76,11 @@ test_expect_success "non-fast-forward git-push ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
<COMMIT-B> refs/heads/next <COMMIT-B> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) next(B) # Refs of upstream : main(B) next(B)
@ -123,15 +117,13 @@ test_expect_success "git-push -f ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/a/b/c <COMMIT-A> refs/heads/a/b/c
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/review/main/topic <COMMIT-A> refs/review/main/topic
<TAG-v123> refs/tags/v123 <TAG-v123> refs/tags/v123
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) tags/v123 refs/review/main/topic(A) a/b/c(A) # Refs of upstream : main(A) tags/v123 refs/review/main/topic(A) a/b/c(A)

Просмотреть файл

@ -12,20 +12,18 @@ test_expect_success "git-push is declined ($PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
$B:refs/heads/main \ $B:refs/heads/main \
HEAD:refs/heads/next \ HEAD:refs/heads/next \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [remote rejected] <COMMIT-B> -> main (pre-receive hook declined) ! [remote rejected] <COMMIT-B> -> main (pre-receive hook declined)
! [remote rejected] HEAD -> next (pre-receive hook declined) ! [remote rejected] HEAD -> next (pre-receive hook declined)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "cleanup ($PROTOCOL)" ' test_expect_success "cleanup ($PROTOCOL)" '

Просмотреть файл

@ -12,8 +12,8 @@ test_expect_success "git-push is declined ($PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
$B:refs/heads/main \ $B:refs/heads/main \
HEAD:refs/heads/next \ HEAD:refs/heads/next \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! <COMMIT-B>:refs/heads/main [remote rejected] (pre-receive hook declined) ! <COMMIT-B>:refs/heads/main [remote rejected] (pre-receive hook declined)
@ -21,12 +21,10 @@ test_expect_success "git-push is declined ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "cleanup ($PROTOCOL/porcelain)" ' test_expect_success "cleanup ($PROTOCOL/porcelain)" '

Просмотреть файл

@ -5,8 +5,8 @@ test_expect_success "proc-receive: no hook, fail to push special ref ($PROTOCOL)
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:next \ HEAD:next \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@ -19,13 +19,11 @@ test_expect_success "proc-receive: no hook, fail to push special ref ($PROTOCOL)
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) next(A) # Refs of upstream : main(A) next(A)
@ -41,8 +39,8 @@ test_expect_success "proc-receive: no hook, all failed for atomic push ($PROTOCO
test_must_fail git -C workbench push --atomic origin \ test_must_fail git -C workbench push --atomic origin \
$B:main \ $B:main \
HEAD:next \ HEAD:next \
HEAD:refs/for/main/topic >out 2>&1 && HEAD:refs/for/main/topic >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@ -55,10 +53,8 @@ test_expect_success "proc-receive: no hook, all failed for atomic push ($PROTOCO
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -5,8 +5,8 @@ test_expect_success "proc-receive: no hook, fail to push special ref ($PROTOCOL/
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:next \ HEAD:next \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@ -20,13 +20,11 @@ test_expect_success "proc-receive: no hook, fail to push special ref ($PROTOCOL/
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) next(A) # Refs of upstream : main(A) next(A)
@ -42,8 +40,8 @@ test_expect_success "proc-receive: no hook, all failed for atomic push ($PROTOCO
test_must_fail git -C workbench push --porcelain --atomic origin \ test_must_fail git -C workbench push --porcelain --atomic origin \
$B:main \ $B:main \
HEAD:next \ HEAD:next \
HEAD:refs/for/main/topic >out 2>&1 && HEAD:refs/for/main/topic >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@ -57,10 +55,8 @@ test_expect_success "proc-receive: no hook, all failed for atomic push ($PROTOCO
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -11,8 +11,8 @@ test_expect_success "setup proc-receive hook (unknown version, $PROTOCOL)" '
test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
# Check status report for git-push # Check status report for git-push
sed -n \ sed -n \
@ -34,12 +34,9 @@ test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL)" '
EOF EOF
test_cmp expect actual-error && test_cmp expect actual-error &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-read-version, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (hook --die-read-version, $PROTOCOL)" '
@ -55,25 +52,22 @@ test_expect_success "setup proc-receive hook (hook --die-read-version, $PROTOCOL
test_expect_success "proc-receive: bad protocol (hook --die-read-version, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (hook --die-read-version, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^ ! / { p; }" \ -e "/^ ! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-version option" out && grep "remote: fatal: die with the --die-read-version option" out-$test_count &&
grep "remote: error: fail to negotiate version with proc-receive hook" out && grep "remote: error: fail to negotiate version with proc-receive hook" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-write-version, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (hook --die-write-version, $PROTOCOL)" '
@ -89,25 +83,22 @@ test_expect_success "setup proc-receive hook (hook --die-write-version, $PROTOCO
test_expect_success "proc-receive: bad protocol (hook --die-write-version, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (hook --die-write-version, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^ ! / { p; }" \ -e "/^ ! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-version option" out && grep "remote: fatal: die with the --die-write-version option" out-$test_count &&
grep "remote: error: fail to negotiate version with proc-receive hook" out && grep "remote: error: fail to negotiate version with proc-receive hook" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-read-commands, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (hook --die-read-commands, $PROTOCOL)" '
@ -123,24 +114,21 @@ test_expect_success "setup proc-receive hook (hook --die-read-commands, $PROTOCO
test_expect_success "proc-receive: bad protocol (hook --die-read-commands, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (hook --die-read-commands, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^ ! / { p; }" \ -e "/^ ! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-commands option" out && grep "remote: fatal: die with the --die-read-commands option" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-read-push-options, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (hook --die-read-push-options, $PROTOCOL)" '
@ -158,24 +146,21 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-push-options, $
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
-o reviewers=user1,user2 \ -o reviewers=user1,user2 \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^ ! / { p; }" \ -e "/^ ! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-push-options option" out && grep "remote: fatal: die with the --die-read-push-options option" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-write-report, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (hook --die-write-report, $PROTOCOL)" '
@ -191,24 +176,21 @@ test_expect_success "setup proc-receive hook (hook --die-write-report, $PROTOCOL
test_expect_success "proc-receive: bad protocol (hook --die-write-report, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (hook --die-write-report, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; }" \ -e "/^To / { p; }" \
-e "/^ ! / { p; }" \ -e "/^ ! / { p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook) ! [remote rejected] HEAD -> refs/for/main/topic (fail to run proc-receive hook)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-report option" out && grep "remote: fatal: die with the --die-write-report option" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (no report, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (no report, $PROTOCOL)" '
@ -224,8 +206,8 @@ test_expect_success "setup proc-receive hook (no report, $PROTOCOL)" '
test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/heads/next \ HEAD:refs/heads/next \
HEAD:refs/for/main/topic >out 2>&1 && HEAD:refs/for/main/topic >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@ -240,13 +222,10 @@ test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL)" '
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) next(A) # Refs of upstream : main(A) next(A)
@ -270,8 +249,8 @@ test_expect_success "setup proc-receive hook (no ref, $PROTOCOL)" '
test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic\ HEAD:refs/for/main/topic\
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -284,12 +263,9 @@ test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL)" '
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (unknown status, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (unknown status, $PROTOCOL)" '
@ -306,8 +282,8 @@ test_expect_success "setup proc-receive hook (unknown status, $PROTOCOL)" '
test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL)" ' test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -320,10 +296,7 @@ test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL)" '
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -11,8 +11,8 @@ test_expect_success "setup proc-receive hook (unknown version, $PROTOCOL/porcela
test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
# Check status report for git-push # Check status report for git-push
sed -n \ sed -n \
@ -34,12 +34,9 @@ test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL/porc
EOF EOF
test_cmp expect actual-error && test_cmp expect actual-error &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-read-version, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (hook --die-read-version, $PROTOCOL/porcelain)" '
@ -55,25 +52,22 @@ test_expect_success "setup proc-receive hook (hook --die-read-version, $PROTOCOL
test_expect_success "proc-receive: bad protocol (hook --die-read-version, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (hook --die-read-version, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; n; p; n; p; }" \ -e "/^To / { p; n; p; n; p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook) ! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook)
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-version option" out && grep "remote: fatal: die with the --die-read-version option" out-$test_count &&
grep "remote: error: fail to negotiate version with proc-receive hook" out && grep "remote: error: fail to negotiate version with proc-receive hook" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-write-version, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (hook --die-write-version, $PROTOCOL/porcelain)" '
@ -89,25 +83,22 @@ test_expect_success "setup proc-receive hook (hook --die-write-version, $PROTOCO
test_expect_success "proc-receive: bad protocol (hook --die-write-version, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (hook --die-write-version, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; n; p; n; p; }" \ -e "/^To / { p; n; p; n; p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook) ! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook)
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-version option" out && grep "remote: fatal: die with the --die-write-version option" out-$test_count &&
grep "remote: error: fail to negotiate version with proc-receive hook" out && grep "remote: error: fail to negotiate version with proc-receive hook" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-read-commands, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (hook --die-read-commands, $PROTOCOL/porcelain)" '
@ -123,24 +114,21 @@ test_expect_success "setup proc-receive hook (hook --die-read-commands, $PROTOCO
test_expect_success "proc-receive: bad protocol (hook --die-read-commands, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (hook --die-read-commands, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; n; p; n; p; }" \ -e "/^To / { p; n; p; n; p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook) ! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook)
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-commands option" out && grep "remote: fatal: die with the --die-read-commands option" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-read-push-options, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (hook --die-read-push-options, $PROTOCOL/porcelain)" '
@ -158,24 +146,21 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-push-options, $
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
-o reviewers=user1,user2 \ -o reviewers=user1,user2 \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; n; p; n; p; }" \ -e "/^To / { p; n; p; n; p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook) ! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook)
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-push-options option" out && grep "remote: fatal: die with the --die-read-push-options option" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (hook --die-write-report, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (hook --die-write-report, $PROTOCOL/porcelain)" '
@ -191,24 +176,21 @@ test_expect_success "setup proc-receive hook (hook --die-write-report, $PROTOCOL
test_expect_success "proc-receive: bad protocol (hook --die-write-report, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (hook --die-write-report, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
filter_out_user_friendly_and_stable_output \ filter_out_user_friendly_and_stable_output \
-e "/^To / { p; n; p; n; p; }" \ -e "/^To / { p; n; p; n; p; }" \
<out >actual && <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
To <URL/of/upstream.git> To <URL/of/upstream.git>
! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook) ! HEAD:refs/for/main/topic [remote rejected] (fail to run proc-receive hook)
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-report option" out && grep "remote: fatal: die with the --die-write-report option" out-$test_count &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (no report, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (no report, $PROTOCOL/porcelain)" '
@ -224,8 +206,8 @@ test_expect_success "setup proc-receive hook (no report, $PROTOCOL/porcelain)" '
test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/heads/next \ HEAD:refs/heads/next \
HEAD:refs/for/main/topic >out 2>&1 && HEAD:refs/for/main/topic >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@ -241,13 +223,10 @@ test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL/porcelain)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) next(A) # Refs of upstream : main(A) next(A)
@ -270,8 +249,8 @@ test_expect_success "setup proc-receive hook (no ref, $PROTOCOL/porcelain)" '
test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic\ HEAD:refs/for/main/topic\
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -285,12 +264,9 @@ test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL/porcelain)" '
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (unknown status, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (unknown status, $PROTOCOL/porcelain)" '
@ -307,8 +283,8 @@ test_expect_success "setup proc-receive hook (unknown status, $PROTOCOL/porcelai
test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -322,10 +298,7 @@ test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL/porce
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -12,8 +12,8 @@ test_expect_success "setup proc-receive hook (ng, no message, $PROTOCOL)" '
test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL)" ' test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -24,12 +24,10 @@ test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL)" '
! [remote rejected] HEAD -> refs/for/main/topic (failed) ! [remote rejected] HEAD -> refs/for/main/topic (failed)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (ng message, $PROTOCOL)" ' test_expect_success "setup proc-receive hook (ng message, $PROTOCOL)" '
@ -46,8 +44,8 @@ test_expect_success "setup proc-receive hook (ng message, $PROTOCOL)" '
test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL)" ' test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -58,10 +56,8 @@ test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL)"
! [remote rejected] HEAD -> refs/for/main/topic (error msg) ! [remote rejected] HEAD -> refs/for/main/topic (error msg)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -12,8 +12,8 @@ test_expect_success "setup proc-receive hook (ng, no message, $PROTOCOL/porcelai
test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -25,12 +25,10 @@ test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL/por
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (ng message, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (ng message, $PROTOCOL/porcelain)" '
@ -47,8 +45,8 @@ test_expect_success "setup proc-receive hook (ng message, $PROTOCOL/porcelain)"
test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL/porcelain)" ' test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -60,10 +58,8 @@ test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL/p
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -13,8 +13,8 @@ test_expect_success "proc-receive: report unexpected ref ($PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
$B:refs/heads/main \ $B:refs/heads/main \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@ -30,12 +30,10 @@ test_expect_success "proc-receive: report unexpected ref ($PROTOCOL)" '
! [remote rejected] HEAD -> refs/for/main/topic (proc-receive failed to report status) ! [remote rejected] HEAD -> refs/for/main/topic (proc-receive failed to report status)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) # Refs of upstream : main(B)

Просмотреть файл

@ -13,8 +13,8 @@ test_expect_success "proc-receive: report unexpected ref ($PROTOCOL/porcelain)"
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
$B:refs/heads/main \ $B:refs/heads/main \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@ -31,12 +31,10 @@ test_expect_success "proc-receive: report unexpected ref ($PROTOCOL/porcelain)"
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) # Refs of upstream : main(B)

Просмотреть файл

@ -12,8 +12,8 @@ test_expect_success "setup proc-receive hook (unexpected ref, $PROTOCOL)" '
test_expect_success "proc-receive: report unknown reference ($PROTOCOL)" ' test_expect_success "proc-receive: report unknown reference ($PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/a/b/c/my/topic \ HEAD:refs/for/a/b/c/my/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/a/b/c/my/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/a/b/c/my/topic
@ -25,10 +25,8 @@ test_expect_success "proc-receive: report unknown reference ($PROTOCOL)" '
! [remote rejected] HEAD -> refs/for/a/b/c/my/topic (proc-receive failed to report status) ! [remote rejected] HEAD -> refs/for/a/b/c/my/topic (proc-receive failed to report status)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -12,8 +12,8 @@ test_expect_success "setup proc-receive hook (unexpected ref, $PROTOCOL/porcelai
test_expect_success "proc-receive: report unknown reference ($PROTOCOL/porcelain)" ' test_expect_success "proc-receive: report unknown reference ($PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/a/b/c/my/topic \ HEAD:refs/for/a/b/c/my/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/a/b/c/my/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/a/b/c/my/topic
@ -26,10 +26,8 @@ test_expect_success "proc-receive: report unknown reference ($PROTOCOL/porcelain
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -16,16 +16,14 @@ test_expect_success "proc-receive: not support push options ($PROTOCOL)" '
-o reviewer=user1 \ -o reviewer=user1 \
origin \ origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
test_i18ngrep "fatal: the receiving end does not support push options" \ test_i18ngrep "fatal: the receiving end does not support push options" \
actual && actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "enable push options ($PROTOCOL)" ' test_expect_success "enable push options ($PROTOCOL)" '
@ -69,13 +67,11 @@ test_expect_success "proc-receive: ignore push-options for version 0 ($PROTOCOL)
* [new reference] HEAD -> refs/for/main/topic * [new reference] HEAD -> refs/for/main/topic
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
test_expect_success "restore proc-receive hook ($PROTOCOL)" ' test_expect_success "restore proc-receive hook ($PROTOCOL)" '
@ -123,13 +119,11 @@ test_expect_success "proc-receive: push with options ($PROTOCOL)" '
* [new reference] HEAD -> refs/for/main/topic * [new reference] HEAD -> refs/for/main/topic
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) next(A) # Refs of upstream : main(A) next(A)

Просмотреть файл

@ -17,16 +17,14 @@ test_expect_success "proc-receive: not support push options ($PROTOCOL/porcelain
-o reviewer=user1 \ -o reviewer=user1 \
origin \ origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
test_i18ngrep "fatal: the receiving end does not support push options" \ test_i18ngrep "fatal: the receiving end does not support push options" \
actual && actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "enable push options ($PROTOCOL/porcelain)" ' test_expect_success "enable push options ($PROTOCOL/porcelain)" '
@ -72,13 +70,11 @@ test_expect_success "proc-receive: ignore push-options for version 0 ($PROTOCOL/
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
test_expect_success "restore proc-receive hook ($PROTOCOL/porcelain)" ' test_expect_success "restore proc-receive hook ($PROTOCOL/porcelain)" '
@ -128,13 +124,11 @@ test_expect_success "proc-receive: push with options ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/next <COMMIT-A> refs/heads/next
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) next(A) # Refs of upstream : main(A) next(A)

Просмотреть файл

@ -26,10 +26,8 @@ test_expect_success "proc-receive: ok ($PROTOCOL)" '
* [new reference] HEAD -> refs/for/main/topic * [new reference] HEAD -> refs/for/main/topic
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -27,10 +27,8 @@ test_expect_success "proc-receive: ok ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -13,8 +13,8 @@ test_expect_success "setup proc-receive hook (option without matching ok, $PROTO
test_expect_success "proc-receive: report option without matching ok ($PROTOCOL)" ' test_expect_success "proc-receive: report option without matching ok ($PROTOCOL)" '
test_must_fail git -C workbench push origin \ test_must_fail git -C workbench push origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -247,10 +247,7 @@ test_expect_success "proc-receive: report with multiple rewrites ($PROTOCOL)" '
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -13,8 +13,8 @@ test_expect_success "setup proc-receive hook (option without matching ok, $PROTO
test_expect_success "proc-receive: report option without matching ok ($PROTOCOL/porcelain)" ' test_expect_success "proc-receive: report option without matching ok ($PROTOCOL/porcelain)" '
test_must_fail git -C workbench push --porcelain origin \ test_must_fail git -C workbench push --porcelain origin \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@ -256,10 +256,7 @@ test_expect_success "proc-receive: report with multiple rewrites ($PROTOCOL/porc
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out && test_cmp_refs -C "$upstream" <<-EOF
make_user_friendly_and_stable_output <out >actual &&
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -28,13 +28,11 @@ test_expect_success "proc-receive: fall throught, let receive-pack to execute ($
* [new reference] <COMMIT-B> -> refs/for/main/topic * [new reference] <COMMIT-B> -> refs/for/main/topic
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/for/main/topic <COMMIT-B> refs/for/main/topic
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) refs/for/main/topic(A) # Refs of upstream : main(A) refs/for/main/topic(A)

Просмотреть файл

@ -29,13 +29,11 @@ test_expect_success "proc-receive: fall throught, let receive-pack to execute ($
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/for/main/topic <COMMIT-B> refs/for/main/topic
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) refs/for/main/topic(A) # Refs of upstream : main(A) refs/for/main/topic(A)

Просмотреть файл

@ -65,12 +65,10 @@ test_expect_success "proc-receive: multiple rewrite for one ref, no refname for
<OID-A>..<OID-B> HEAD -> refs/changes/25/125/1 <OID-A>..<OID-B> HEAD -> refs/changes/25/125/1
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "proc-receive: check remote-tracking #1 ($PROTOCOL)" ' test_expect_success "proc-receive: check remote-tracking #1 ($PROTOCOL)" '
@ -142,12 +140,10 @@ test_expect_success "proc-receive: multiple rewrites for one ref, no refname for
+ <OID-B>...<OID-A> HEAD -> refs/changes/25/125/1 (forced update) + <OID-B>...<OID-A> HEAD -> refs/changes/25/125/1 (forced update)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "proc-receive: check remote-tracking #2 ($PROTOCOL)" ' test_expect_success "proc-receive: check remote-tracking #2 ($PROTOCOL)" '
@ -205,12 +201,10 @@ test_expect_success "proc-receive: multiple rewrites for one ref ($PROTOCOL)" '
<OID-A>..<OID-B> HEAD -> refs/changes/24/124/2 <OID-A>..<OID-B> HEAD -> refs/changes/24/124/2
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "proc-receive: check remote-tracking #3 ($PROTOCOL)" ' test_expect_success "proc-receive: check remote-tracking #3 ($PROTOCOL)" '

Просмотреть файл

@ -51,12 +51,10 @@ test_expect_success "proc-receive: multiple rewrite for one ref, no refname for
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (multiple rewrites for one ref, no refname for the 2nd rewrite, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (multiple rewrites for one ref, no refname for the 2nd rewrite, $PROTOCOL/porcelain)" '
@ -114,12 +112,10 @@ test_expect_success "proc-receive: multiple rewrites for one ref, no refname for
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook (multiple rewrites for one ref, $PROTOCOL/porcelain)" ' test_expect_success "setup proc-receive hook (multiple rewrites for one ref, $PROTOCOL/porcelain)" '
@ -163,10 +159,8 @@ test_expect_success "proc-receive: multiple rewrites for one ref ($PROTOCOL/porc
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '

Просмотреть файл

@ -24,8 +24,8 @@ test_expect_success "proc-receive: report update of mixed refs ($PROTOCOL)" '
HEAD:refs/heads/foo \ HEAD:refs/heads/foo \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
HEAD:refs/for/next/topic3 \ HEAD:refs/for/next/topic3 \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@ -65,15 +65,13 @@ test_expect_success "proc-receive: report update of mixed refs ($PROTOCOL)" '
! [remote rejected] HEAD -> refs/for/next/topic3 (proc-receive failed to report status) ! [remote rejected] HEAD -> refs/for/next/topic3 (proc-receive failed to report status)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/bar <COMMIT-A> refs/heads/bar
<COMMIT-A> refs/heads/baz <COMMIT-A> refs/heads/baz
<COMMIT-A> refs/heads/foo <COMMIT-A> refs/heads/foo
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) foo(A) bar(A)) baz(A) # Refs of upstream : main(B) foo(A) bar(A)) baz(A)

Просмотреть файл

@ -24,8 +24,8 @@ test_expect_success "proc-receive: report update of mixed refs ($PROTOCOL/porcel
HEAD:refs/heads/foo \ HEAD:refs/heads/foo \
HEAD:refs/for/main/topic \ HEAD:refs/for/main/topic \
HEAD:refs/for/next/topic3 \ HEAD:refs/for/next/topic3 \
>out 2>&1 && >out-$test_count 2>&1 &&
make_user_friendly_and_stable_output <out >actual && make_user_friendly_and_stable_output <out-$test_count >actual &&
cat >expect <<-EOF && cat >expect <<-EOF &&
remote: # pre-receive hook remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@ -66,15 +66,13 @@ test_expect_success "proc-receive: report update of mixed refs ($PROTOCOL/porcel
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/bar <COMMIT-A> refs/heads/bar
<COMMIT-A> refs/heads/baz <COMMIT-A> refs/heads/baz
<COMMIT-A> refs/heads/foo <COMMIT-A> refs/heads/foo
<COMMIT-B> refs/heads/main <COMMIT-B> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(B) foo(A) bar(A)) baz(A) # Refs of upstream : main(B) foo(A) bar(A)) baz(A)

Просмотреть файл

@ -92,14 +92,12 @@ test_expect_success "proc-receive: process all refs ($PROTOCOL)" '
+ <OID-B>...<OID-A> HEAD -> refs/pull/124/head (forced update) + <OID-B>...<OID-A> HEAD -> refs/pull/124/head (forced update)
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/bar <COMMIT-B> refs/heads/bar
<COMMIT-A> refs/heads/baz <COMMIT-A> refs/heads/baz
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) bar(A) baz(B) # Refs of upstream : main(A) bar(A) baz(B)

Просмотреть файл

@ -93,14 +93,12 @@ test_expect_success "proc-receive: process all refs ($PROTOCOL/porcelain)" '
Done Done
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-B> refs/heads/bar <COMMIT-B> refs/heads/bar
<COMMIT-A> refs/heads/baz <COMMIT-A> refs/heads/baz
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) bar(A) baz(B) # Refs of upstream : main(A) bar(A) baz(B)

Просмотреть файл

@ -50,12 +50,10 @@ test_expect_success "proc-receive: update branch and new tag ($PROTOCOL)" '
* [new reference] v123 -> refs/pull/124/head * [new reference] v123 -> refs/pull/124/head
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
EOF EOF
test_cmp expect actual
' '
# Refs of upstream : main(A) # Refs of upstream : main(A)
@ -63,14 +61,12 @@ test_expect_success "proc-receive: update branch and new tag ($PROTOCOL)" '
test_expect_success "setup upstream: create tags/v123 ($PROTOCOL)" ' test_expect_success "setup upstream: create tags/v123 ($PROTOCOL)" '
git -C "$upstream" update-ref refs/heads/topic $A && git -C "$upstream" update-ref refs/heads/topic $A &&
git -C "$upstream" update-ref refs/tags/v123 $TAG && git -C "$upstream" update-ref refs/tags/v123 $TAG &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-A> refs/heads/topic <COMMIT-A> refs/heads/topic
<TAG-v123> refs/tags/v123 <TAG-v123> refs/tags/v123
EOF EOF
test_cmp expect actual
' '
test_expect_success "setup proc-receive hook ($PROTOCOL)" ' test_expect_success "setup proc-receive hook ($PROTOCOL)" '
@ -125,11 +121,9 @@ test_expect_success "proc-receive: create/delete branch, and delete tag ($PROTOC
* [new reference] <COMMIT-A> -> refs/pull/124/head * [new reference] <COMMIT-A> -> refs/pull/124/head
EOF EOF
test_cmp expect actual && test_cmp expect actual &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual && test_cmp_refs -C "$upstream" <<-EOF
cat >expect <<-EOF &&
<COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/main
<COMMIT-B> refs/heads/topic <COMMIT-B> refs/heads/topic
EOF EOF
test_cmp expect actual
' '