From: Johannes Sixt <j.sixt@viscovery.net>
To: mhagger@alum.mit.edu
Cc: Junio C Hamano <gitster@pobox.com>,
git@vger.kernel.org, Jeff King <peff@peff.net>,
Drew Northup <drew.northup@maine.edu>,
Jakub Narebski <jnareb@gmail.com>,
Heiko Voigt <hvoigt@hvoigt.net>,
Johan Herland <johan@herland.net>,
Julian Phillips <julian@quantumfyre.co.uk>
Subject: [PATCH] t1402-check-ref-format: skip tests of refs beginning with slash on Windows
Date: Thu, 13 Oct 2011 10:06:20 +0200 [thread overview]
Message-ID: <4E969BFC.50706@viscovery.net> (raw)
In-Reply-To: <1318492715-5931-1-git-send-email-mhagger@alum.mit.edu>
From: Johannes Sixt <j6t@kdbg.org>
Bash on Windows converts program arguments that look like absolute POSIX
paths to their Windows form, i.e., drive-letter-colon format. For this
reason, those tests in t1402 that check refs that begin with a slash do not
work as expected on Windows: valid_ref tests are doomed to fail, and
invalid_ref tests fail for the wrong reason (that there is a colon rather
than that they begin with a slash).
Skip these tests.
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
---
Am 10/13/2011 9:58, schrieb mhagger@alum.mit.edu:
> From: Michael Haggerty <mhagger@alum.mit.edu>
>
> This is the next installment of the reference changes that I have been
> working on. This batch includes a lot of tidying up in preparation
> for the real changes.
This patch is needed on top of mh/check-ref-format-3, or it could be
inserted in front of this batch (which probably amounts to the same
thing :-)
-- Hannes
t/t1402-check-ref-format.sh | 64 +++++++++++++++++++++---------------------
1 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/t/t1402-check-ref-format.sh b/t/t1402-check-ref-format.sh
index 710fcca..dba5e97 100755
--- a/t/t1402-check-ref-format.sh
+++ b/t/t1402-check-ref-format.sh
@@ -5,38 +5,38 @@ test_description='Test git check-ref-format'
. ./test-lib.sh
valid_ref() {
- if test "$#" = 1
- then
- test_expect_success "ref name '$1' is valid" \
- "git check-ref-format '$1'"
- else
- test_expect_success "ref name '$1' is valid with options $2" \
+ prereq=
+ case $1 in
+ [A-Z]*)
+ prereq=$1
+ shift
+ esac
+ test_expect_success $prereq "ref name '$1' is valid${2:+ with options $2}" \
"git check-ref-format $2 '$1'"
- fi
}
invalid_ref() {
- if test "$#" = 1
- then
- test_expect_success "ref name '$1' is invalid" \
- "test_must_fail git check-ref-format '$1'"
- else
- test_expect_success "ref name '$1' is invalid with options $2" \
+ prereq=
+ case $1 in
+ [A-Z]*)
+ prereq=$1
+ shift
+ esac
+ test_expect_success $prereq "ref name '$1' is invalid${2:+ with options $2}" \
"test_must_fail git check-ref-format $2 '$1'"
- fi
}
invalid_ref ''
-invalid_ref '/'
-invalid_ref '/' --allow-onelevel
-invalid_ref '/' --normalize
-invalid_ref '/' '--allow-onelevel --normalize'
+invalid_ref NOT_MINGW '/'
+invalid_ref NOT_MINGW '/' --allow-onelevel
+invalid_ref NOT_MINGW '/' --normalize
+invalid_ref NOT_MINGW '/' '--allow-onelevel --normalize'
valid_ref 'foo/bar/baz'
valid_ref 'foo/bar/baz' --normalize
invalid_ref 'refs///heads/foo'
valid_ref 'refs///heads/foo' --normalize
invalid_ref 'heads/foo/'
-invalid_ref '/heads/foo'
-valid_ref '/heads/foo' --normalize
+invalid_ref NOT_MINGW '/heads/foo'
+valid_ref NOT_MINGW '/heads/foo' --normalize
invalid_ref '///heads/foo'
valid_ref '///heads/foo' --normalize
invalid_ref './foo'
@@ -115,14 +115,14 @@ invalid_ref "$ref" --refspec-pattern
invalid_ref "$ref" '--refspec-pattern --allow-onelevel'
ref='/foo'
-invalid_ref "$ref"
-invalid_ref "$ref" --allow-onelevel
-invalid_ref "$ref" --refspec-pattern
-invalid_ref "$ref" '--refspec-pattern --allow-onelevel'
-invalid_ref "$ref" --normalize
-valid_ref "$ref" '--allow-onelevel --normalize'
-invalid_ref "$ref" '--refspec-pattern --normalize'
-valid_ref "$ref" '--refspec-pattern --allow-onelevel --normalize'
+invalid_ref NOT_MINGW "$ref"
+invalid_ref NOT_MINGW "$ref" --allow-onelevel
+invalid_ref NOT_MINGW "$ref" --refspec-pattern
+invalid_ref NOT_MINGW "$ref" '--refspec-pattern --allow-onelevel'
+invalid_ref NOT_MINGW "$ref" --normalize
+valid_ref NOT_MINGW "$ref" '--allow-onelevel --normalize'
+invalid_ref NOT_MINGW "$ref" '--refspec-pattern --normalize'
+valid_ref NOT_MINGW "$ref" '--refspec-pattern --allow-onelevel --normalize'
test_expect_success "check-ref-format --branch @{-1}" '
T=$(git write-tree) &&
@@ -155,21 +155,21 @@ test_expect_success 'check-ref-format --branch from subdir' '
'
valid_ref_normalized() {
- test_expect_success "ref name '$1' simplifies to '$2'" "
+ test_expect_success $3 "ref name '$1' simplifies to '$2'" "
refname=\$(git check-ref-format --normalize '$1') &&
test \"\$refname\" = '$2'"
}
invalid_ref_normalized() {
- test_expect_success "check-ref-format --normalize rejects '$1'" "
+ test_expect_success $2 "check-ref-format --normalize rejects '$1'" "
test_must_fail git check-ref-format --normalize '$1'"
}
valid_ref_normalized 'heads/foo' 'heads/foo'
valid_ref_normalized 'refs///heads/foo' 'refs/heads/foo'
-valid_ref_normalized '/heads/foo' 'heads/foo'
+valid_ref_normalized '/heads/foo' 'heads/foo' NOT_MINGW
valid_ref_normalized '///heads/foo' 'heads/foo'
invalid_ref_normalized 'foo'
-invalid_ref_normalized '/foo'
+invalid_ref_normalized '/foo' NOT_MINGW
invalid_ref_normalized 'heads/foo/../bar'
invalid_ref_normalized 'heads/./foo'
invalid_ref_normalized 'heads\foo'
--
"Atomic objects are neither active nor radioactive." --
Programming Languages -- C++, Final Committee Draft (Doc.N3092)
next prev parent reply other threads:[~2011-10-13 8:06 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-13 7:58 [PATCH 00/14] Tidying up references code mhagger
2011-10-13 7:58 ` [PATCH 01/14] cache.h: add comments for git_path() and git_path_submodule() mhagger
2011-10-13 18:37 ` Junio C Hamano
2011-10-13 7:58 ` [PATCH 02/14] struct ref_list: document name member mhagger
2011-10-13 18:37 ` Junio C Hamano
2011-10-13 7:58 ` [PATCH 03/14] refs.c: rename some local "refname" variables mhagger
2011-10-13 7:58 ` [PATCH 04/14] refs: rename some parameters result -> sha1 mhagger
2011-10-13 18:42 ` Junio C Hamano
2011-10-13 7:58 ` [PATCH 05/14] clear_ref_list(): rename from free_ref_list() mhagger
2011-10-13 18:43 ` Junio C Hamano
2011-10-13 7:58 ` [PATCH 06/14] resolve_gitlink_ref(): improve docstring mhagger
2011-10-13 18:48 ` Junio C Hamano
2011-10-13 7:58 ` [PATCH 07/14] is_refname_available(): remove the "quiet" argument mhagger
2011-10-13 12:41 ` Drew Northup
2011-10-13 18:49 ` Junio C Hamano
2011-10-14 5:35 ` Michael Haggerty
2011-10-13 7:58 ` [PATCH 08/14] parse_ref_line(): add docstring mhagger
2011-10-13 7:58 ` [PATCH 09/14] add_ref(): " mhagger
2011-10-13 7:58 ` [PATCH 10/14] is_dup_ref(): extract function from sort_ref_list() mhagger
2011-10-13 20:43 ` Junio C Hamano
2011-10-13 7:58 ` [PATCH 11/14] refs: change signatures of get_packed_refs() and get_loose_refs() mhagger
2011-10-13 7:58 ` [PATCH 12/14] get_ref_dir(): change signature mhagger
2011-10-13 7:58 ` [PATCH 13/14] Pass a (cached_refs *) to the resolve_gitlink_*() functions mhagger
2011-10-13 7:58 ` [PATCH 14/14] resolve_gitlink_ref_recursive(): change to work with struct cached_refs mhagger
2011-10-13 8:06 ` Johannes Sixt [this message]
2011-10-13 23:00 ` [PATCH] t1402-check-ref-format: skip tests of refs beginning with slash on Windows Junio C Hamano
2011-10-13 23:07 ` Junio C Hamano
2011-10-14 6:40 ` Johannes Sixt
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=4E969BFC.50706@viscovery.net \
--to=j.sixt@viscovery.net \
--cc=drew.northup@maine.edu \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=hvoigt@hvoigt.net \
--cc=jnareb@gmail.com \
--cc=johan@herland.net \
--cc=julian@quantumfyre.co.uk \
--cc=mhagger@alum.mit.edu \
--cc=peff@peff.net \
/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.