Re: [PATCH v2 1/2] t5574: test porcelain output of atomic fetch
On Thu, Dec 14, 2023 at 08:33:11PM +0800, Jiang Xin wrote:
> From: Jiang Xin <zhiyou.jx@alibaba-inc.com>
Show 45 quoted lines
> @@ -91,36 +85,61 @@ test_expect_success 'fetch porcelain output' '
> git checkout force-updated &&
> git reset --hard HEAD~ &&
> test_commit --no-tag force-update-new &&
> - FORCE_UPDATED_NEW=$(git rev-parse HEAD) &&
> -
> - cat >expect <<-EOF &&
> - - $MAIN_OLD $ZERO_OID refs/forced/deleted-branch
> - - $MAIN_OLD $ZERO_OID refs/unforced/deleted-branch
> - $MAIN_OLD $FAST_FORWARD_NEW refs/unforced/fast-forward
> - ! $FORCE_UPDATED_OLD $FORCE_UPDATED_NEW refs/unforced/force-updated
> - * $ZERO_OID $MAIN_OLD refs/unforced/new-branch
> - $MAIN_OLD $FAST_FORWARD_NEW refs/forced/fast-forward
> - + $FORCE_UPDATED_OLD $FORCE_UPDATED_NEW refs/forced/force-updated
> - * $ZERO_OID $MAIN_OLD refs/forced/new-branch
> - $MAIN_OLD $FAST_FORWARD_NEW refs/remotes/origin/fast-forward
> - + $FORCE_UPDATED_OLD $FORCE_UPDATED_NEW refs/remotes/origin/force-updated
> - * $ZERO_OID $MAIN_OLD refs/remotes/origin/new-branch
> - EOF
> -
> - # Execute a dry-run fetch first. We do this to assert that the dry-run
> - # and non-dry-run fetches produces the same output. Execution of the
> - # fetch is expected to fail as we have a rejected reference update.
> - test_must_fail git -C porcelain fetch \
> - --porcelain --dry-run --prune origin $refspecs >actual &&
> - test_cmp expect actual &&
> -
> - # And now we perform a non-dry-run fetch.
> - test_must_fail git -C porcelain fetch \
> - --porcelain --prune origin $refspecs >actual 2>stderr &&
> - test_cmp expect actual &&
> - test_must_be_empty stderr
> + FORCE_UPDATED_NEW=$(git rev-parse HEAD)
> '
>
> +for opt in off on
> +do
> + case $opt in
> + on)
> + opt=--atomic
> + ;;
> + off)
> + opt=
> + ;;
> + esac
Nit: you could also do `for opt in "--atomic" ""` directly to get rid of
this case statement. Not sure whether this is worth a reroll though,
probably not.
Patrick