All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tay Ray Chuan <rctay89@gmail.com>
To: Jeff King <peff@peff.net>
Cc: git@vger.kernel.org, "Shawn O. Pearce" <spearce@spearce.org>,
	Daniel Barkalow <barkalow@iabervon.org>,
	Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCH v3 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs
Date: Tue, 5 Jan 2010 18:01:32 +0800	[thread overview]
Message-ID: <20100105180132.e573fff2.rctay89@gmail.com> (raw)
In-Reply-To: <20100105063546.GB19368@coredump.intra.peff.net>

Hi,

On Tue, Jan 5, 2010 at 2:35 PM, Jeff King <peff@peff.net> wrote:
> On Thu, Dec 24, 2009 at 03:41:58PM +0800, Tay Ray Chuan wrote:
>
>> Test that when non-fast-forwarded refs cannot be matched without an
>> explicit refspect, the push fails with a non-fast-forward ref status and
>> help message.
>
> I don't understand what you're testing here. If it's not matched, then
> how is it a non-fast-forward? Isn't it simply unmatched?

Let me rephrase this as:

  Some refs can only be matched to a remote ref with an explicit
  refspec. When such a ref is a non-fast-forward of its remote ref,
  test that pushing them (with the explicit refspec specified) fails
  with a non-fast-foward-type error.

> Your test:
>
>> +test_expect_failure 'push fails for non-fast-forward refs unmatched by remote helper' '
>> +     # create a dissimilarly-named ref so that git is unable to match the refs
>> +     git push origin master:retsam
>> +
>> +     echo "change changed" > path2 &&
>> +     git commit -a -m path2 --amend &&
>> +
>> +     # push master too. This ensures there is at least one '"'push'"' command to
>> +     # the remote helper and triggers interaction with the helper.
>> +     !(git push -v origin +master master:retsam >output 2>&1) &&
>> +
>> +     grep "^ + [a-z0-9]\+\.\.\.[a-z0-9]\+[ ]*master -> master (forced update)$" output &&
>> +     grep "^ ! \[rejected\][ ]*master -> retsam (non-fast-forward)$" output &&
>
> Looks like you're just testing the usual "master -> retsam is not a
> fast-forward" case. I don't understand how this is different from the
> previous tests. Can you elaborate?

The problem in question is that a non-fast-forward error is not being
reported, and this test sets up a situation to trigger this - it's not
meant to be just another non-fast-forward test.

-- 
Cheers,
Ray Chuan

  reply	other threads:[~2010-01-05 10:03 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-04  6:54 [PATCH resend 0/3] transport: catch non-fast-forwards Tay Ray Chuan
2009-12-04  6:56 ` [PATCH resend 1/3] refactor ref status logic for pushing Tay Ray Chuan
2009-12-04  6:57 ` [PATCH resend 2/3] transport-helper.c::push_refs(): know more about refs before pushing Tay Ray Chuan
2009-12-04  6:58 ` [PATCH resend 3/3] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2009-12-04 10:20   ` Jeff King
     [not found]     ` <20091204125042.c64f347d.rctay89@gmail.com>
2009-12-04  4:54       ` [PATCH 1/3] refactor ref status logic for pushing Tay Ray Chuan
     [not found]       ` <20091204144822.a61355d2.rctay89@gmail.com>
2009-12-04  7:05         ` [PATCH resend 0/3] transport: catch non-fast-forwards Daniel Barkalow
2009-12-08 14:34       ` [PATCH v2 " Tay Ray Chuan
2009-12-08 14:35         ` [PATCH v2 1/3] refactor ref status logic for pushing Tay Ray Chuan
2009-12-08 17:17           ` Daniel Barkalow
2009-12-09  3:40             ` Tay Ray Chuan
2009-12-09  7:13               ` Daniel Barkalow
2009-12-08 14:36         ` [PATCH v2 2/3] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2009-12-08 14:37         ` [PATCH v2 3/3] transport-helper.c::push_refs(): emit "no refs" error message Tay Ray Chuan
2009-12-24  7:40         ` [PATCH v3 0/6] transport: catch non-fast forwards Tay Ray Chuan
2009-12-24  7:40           ` [PATCH v3 1/6] t5541-http-push.sh: add tests for non-fast-forward pushes Tay Ray Chuan
2009-12-24  7:41             ` [PATCH v3 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs Tay Ray Chuan
2009-12-24  7:42               ` [PATCH v3 3/6] refactor ref status logic for pushing Tay Ray Chuan
2009-12-24  7:43                 ` [PATCH v3 4/6] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2009-12-24  7:44                   ` [PATCH v3 5/6] transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed Tay Ray Chuan
2009-12-24  7:45                     ` [PATCH v3 6/6] transport-helper.c::push_refs(): emit "no refs" error message Tay Ray Chuan
2010-01-05  6:32                     ` [PATCH v3 5/6] transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed Jeff King
2010-01-05 10:01                       ` Tay Ray Chuan
2010-01-06 12:04                         ` Jeff King
2010-01-06 21:41                           ` Tay Ray Chuan
2010-01-08  1:04                             ` Tay Ray Chuan
2010-01-05  6:35               ` [PATCH v3 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs Jeff King
2010-01-05 10:01                 ` Tay Ray Chuan [this message]
2010-01-06 12:05                   ` Jeff King
2010-01-06  1:04               ` Junio C Hamano
2010-01-06  2:12                 ` Tay Ray Chuan
2010-01-08  2:12     ` [PATCH v4 0/6] transport: catch non-fast forwards Tay Ray Chuan
2010-01-08  2:12       ` [PATCH v4 1/6] t5541-http-push.sh: add tests for non-fast-forward pushes Tay Ray Chuan
2010-01-08  2:12         ` [PATCH v4 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs Tay Ray Chuan
2010-01-08  2:12           ` [PATCH v4 3/6] refactor ref status logic for pushing Tay Ray Chuan
2010-01-08  2:12             ` [PATCH v4 4/6] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2010-01-08  2:12               ` [PATCH v4 5/6] transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed Tay Ray Chuan
2010-01-08  2:12                 ` [PATCH v4 6/6] transport-helper.c::push_refs(): emit "no refs" error message Tay Ray Chuan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100105180132.e573fff2.rctay89@gmail.com \
    --to=rctay89@gmail.com \
    --cc=barkalow@iabervon.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    --cc=spearce@spearce.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.