From: Jonathan Nieder <jrnieder@gmail.com>
To: Johannes Sixt <j.sixt@viscovery.net>
Cc: Junio C Hamano <gitster@pobox.com>,
git@vger.kernel.org, Greg Brockman <gdb@MIT.EDU>,
Ilari Liusvaara <ilari.liusvaara@elisanet.fi>,
Elijah Newren <newren@gmail.com>
Subject: jn/apply-filename-with-sp (Re: What's cooking in git.git (Aug 2010, #02; Wed, 11))
Date: Thu, 12 Aug 2010 17:40:44 -0500 [thread overview]
Message-ID: <20100812224044.GK2029@burratino> (raw)
In-Reply-To: <4C63BD9B.6000608@viscovery.net>
Johannes Sixt wrote:
> Am 8/12/2010 1:35, schrieb Junio C Hamano:
>> * jn/apply-filename-with-sp (2010-07-23) 4 commits
>> - apply: Handle traditional patches with space in filename
>> - t4135 (apply): use expand instead of pr for portability
>> - tests: Test how well "git apply" copes with weird filenames
>> - apply: Split quoted filename handling into new function
>>
>> Looked Ok. Will merge to 'next'.
>
> The test cases that work with files with tabs must have a prerequisite;
> see t3600-rm.sh.
Would this work?
-- 8< --
Subject: t4135 (apply): filenames with tabs are not usable on NTFS
Move the code setting up the FUNNYNAMES prerequisite from
v1.3.0-rc1~67 (workaround fat/ntfs deficiences for t3600-rm.sh,
2006-03-03) to test-lib and use it.
Reported-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
t/t3600-rm.sh | 11 +++--------
t/t4135-apply-weird-filenames.sh | 17 +++++++++--------
t/test-lib.sh | 11 +++++++++++
3 files changed, 23 insertions(+), 16 deletions(-)
diff --git a/t/t3600-rm.sh b/t/t3600-rm.sh
index b26cabd..a60b7c9 100755
--- a/t/t3600-rm.sh
+++ b/t/t3600-rm.sh
@@ -14,15 +14,10 @@ test_expect_success \
git add -- foo bar baz 'space embedded' -q &&
git commit -m 'add normal files'"
-if touch -- 'tab embedded' 'newline
-embedded' 2>/dev/null
-then
- test_set_prereq FUNNYNAMES
-else
- say 'Your filesystem does not allow tabs in filenames.'
-fi
-
test_expect_success FUNNYNAMES 'add files with funny names' "
+ >'newline
+embedded' &&
+ >'tab embedded' &&
git add -- 'tab embedded' 'newline
embedded' &&
git commit -m 'add files with tabs and newlines'
diff --git a/t/t4135-apply-weird-filenames.sh b/t/t4135-apply-weird-filenames.sh
index f4c7e15..5c7165e 100755
--- a/t/t4135-apply-weird-filenames.sh
+++ b/t/t4135-apply-weird-filenames.sh
@@ -40,11 +40,12 @@ test_expect_success 'setup: test prerequisites' '
try_filename() {
desc=$1
postimage=$2
- exp1=${3:-success}
- exp2=${4:-success}
- exp3=${5:-success}
+ prereq=${3:-}
+ exp1=${4:-success}
+ exp2=${5:-success}
+ exp3=${6:-success}
- test_expect_$exp1 "$desc, git-style file creation patch" "
+ test_expect_$exp1 $prereq "$desc, git-style file creation patch" "
reset_preimage &&
echo postimage >'$postimage' &&
git add -N '$postimage' &&
@@ -57,7 +58,7 @@ try_filename() {
test_cmp postimage.saved '$postimage'
"
- test_expect_$exp2 UNIDIFF "$desc, traditional patch" "
+ test_expect_$exp2 ${prereq:+$prereq,}UNIDIFF "$desc, traditional patch" "
reset_preimage &&
echo preimage >'$postimage.orig' &&
echo postimage >'$postimage' &&
@@ -70,7 +71,7 @@ try_filename() {
test_cmp postimage.saved '$postimage'
"
- test_expect_$exp3 FULLDIFF "$desc, traditional file creation patch" "
+ test_expect_$exp3 ${prereq:+$prereq,}FULLDIFF "$desc, traditional file creation patch" "
reset_preimage &&
reset_subdirs &&
echo postimage >b/'$postimage' &&
@@ -86,9 +87,9 @@ try_filename() {
try_filename 'plain' 'postimage.txt'
try_filename 'with spaces' 'post image.txt'
-try_filename 'with tab' 'post image.txt'
+try_filename 'with tab' 'post image.txt' FUNNYNAMES
try_filename 'with backslash' 'post\image.txt'
-try_filename 'with quote' '"postimage".txt' success failure success
+try_filename 'with quote' '"postimage".txt' '' success failure success
test_expect_success FULLDIFF 'whitespace-damaged traditional patch' '
reset_preimage &&
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 938fb24..5ba8723 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -907,6 +907,17 @@ esac
test -z "$NO_PERL" && test_set_prereq PERL
test -z "$NO_PYTHON" && test_set_prereq PYTHON
+# test whether the filesystem supports unusual filenames
+f1='newline
+embedded'
+if
+ >"$f1" 2>/dev/null &&
+ >'tab embedded' 2>/dev/null
+then
+ test_set_prereq FUNNYNAMES
+fi
+rm -f "$f1" 'tab embedded'
+
# test whether the filesystem supports symbolic links
ln -s x y 2>/dev/null && test -h y 2>/dev/null && test_set_prereq SYMLINKS
rm -f y
--
1.7.2.1.544.ga752d.dirty
next prev parent reply other threads:[~2010-08-12 22:42 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-11 23:35 What's cooking in git.git (Aug 2010, #02; Wed, 11) Junio C Hamano
2010-08-12 1:41 ` Jonathan Nieder
2010-08-12 2:33 ` Ævar Arnfjörð Bjarmason
2010-08-12 3:15 ` jn/commit-no-change-wo-status (Re: What's cooking in git.git (Aug 2010, #02; Wed, 11)) Jonathan Nieder
2010-08-12 5:47 ` What's cooking in git.git (Aug 2010, #02; Wed, 11) Elijah Newren
2010-08-12 15:49 ` Junio C Hamano
2010-08-12 21:12 ` Elijah Newren
2010-08-12 9:23 ` Johannes Sixt
2010-08-12 9:37 ` Greg Brockman
2010-08-12 10:11 ` Ævar Arnfjörð Bjarmason
2010-08-12 22:08 ` Junio C Hamano
2010-08-12 22:13 ` Greg Brockman
2010-08-12 22:19 ` Junio C Hamano
2010-08-12 10:20 ` Ævar Arnfjörð Bjarmason
2010-08-12 11:35 ` Erik Faye-Lund
2010-08-12 16:50 ` Ævar Arnfjörð Bjarmason
2010-08-12 17:34 ` Chris Packham
2010-08-12 18:35 ` Ævar Arnfjörð Bjarmason
2010-08-12 22:19 ` windows smoke tester (was Re: What's cooking in git.git (Aug 2010, #02; Wed, 11)) Chris Packham
2010-08-12 22:29 ` Ævar Arnfjörð Bjarmason
2010-08-12 22:58 ` Chris Packham
2010-08-13 1:01 ` Ævar Arnfjörð Bjarmason
2010-08-14 0:42 ` Chris Packham
2010-08-14 0:46 ` Ævar Arnfjörð Bjarmason
2010-08-15 0:54 ` Tay Ray Chuan
2010-08-15 1:08 ` Ævar Arnfjörð Bjarmason
2010-08-15 17:39 ` Tay Ray Chuan
2010-08-12 10:21 ` What's cooking in git.git (Aug 2010, #02; Wed, 11) Ilari Liusvaara
2010-08-12 10:31 ` Johannes Sixt
2010-08-12 15:25 ` Ilari Liusvaara
2010-08-12 12:43 ` Elijah Newren
2010-08-12 22:21 ` Junio C Hamano
2010-08-12 21:58 ` Junio C Hamano
2010-08-12 22:40 ` Jonathan Nieder [this message]
2010-08-12 22:46 ` jn/apply-filename-with-sp (Re: What's cooking in git.git (Aug 2010, #02; Wed, 11)) Ævar Arnfjörð Bjarmason
2010-08-12 23:17 ` Junio C Hamano
2010-08-13 0:59 ` Ævar Arnfjörð Bjarmason
2010-08-13 21:44 ` Johannes Sixt
2010-08-14 2:27 ` Jonathan Nieder
2010-08-14 18:37 ` Johannes Sixt
2010-08-15 0:05 ` Jonathan Nieder
2010-08-19 1:45 ` [PATCH v2 0/3] apply: handle traditional patches with space in filename Jonathan Nieder
2010-08-19 1:46 ` [PATCH 1/3] apply: split quoted filename handling into new function Jonathan Nieder
2010-08-19 1:48 ` [PATCH 2/3] tests: exercise "git apply" with weird filenames Jonathan Nieder
2010-08-19 1:50 ` [PATCH 3/3] apply: handle traditional patches with space in filename Jonathan Nieder
2010-08-19 19:56 ` [PATCH v2 0/3] " Johannes Sixt
2010-08-20 6:26 ` Jonathan Nieder
2010-08-13 0:08 ` jn/svn-fe Jonathan Nieder
2010-08-13 10:18 ` jn/svn-fe Jakub Narebski
2010-08-13 21:33 ` jn/svn-fe Johannes Sixt
2010-08-13 23:47 ` [PATCH v2 jn/svn-fe 0/5] vcs-svn: Port to Windows Jonathan Nieder
2010-08-13 23:59 ` [PATCH 1/5] compat: add strtok_r() Jonathan Nieder
2010-08-14 0:01 ` [PATCH 2/5] vcs-svn: Rename dirent pool to build on Windows Jonathan Nieder
2010-08-14 0:03 ` [PATCH 3/5] vcs-svn: Avoid %z in format string Jonathan Nieder
2010-08-14 0:04 ` [PATCH 4/5] t9010 (svn-fe): use Unix-style path in URI Jonathan Nieder
2010-08-14 0:06 ` [PATCH 5/5] t9010 (svn-fe): avoid symlinks in test Jonathan Nieder
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=20100812224044.GK2029@burratino \
--to=jrnieder@gmail.com \
--cc=gdb@MIT.EDU \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=ilari.liusvaara@elisanet.fi \
--cc=j.sixt@viscovery.net \
--cc=newren@gmail.com \
/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.