From: Junio C Hamano <gitster@pobox.com>
To: "SZEDER Gábor" <szeder.dev@gmail.com>
Cc: git@vger.kernel.org, Clemens Buchacher <drizzd@gmx.net>,
Johannes Schindelin <Johannes.Schindelin@gmx.de>,
Manlio Perillo <manlio.perillo@gmail.com>
Subject: Re: [PATCH 01/11] t9902-completion: add tests demonstrating issues with quoted pathnames
Date: Tue, 17 Apr 2018 12:48:54 +0900 [thread overview]
Message-ID: <xmqq7ep6v6ft.fsf@gitster-ct.c.googlers.com> (raw)
In-Reply-To: <20180416224113.16993-2-szeder.dev@gmail.com> ("SZEDER Gábor"'s message of "Tue, 17 Apr 2018 00:41:05 +0200")
SZEDER Gábor <szeder.dev@gmail.com> writes:
> Do any more new tests need FUNNYNAMES* prereq?
Hmph, all of these look like they involve some funnynames ;-)
> +test_expect_failure 'complete files - escaped characters on cmdline' '
> + test_when_finished "rm -rf \"New|Dir\"" &&
> + mkdir "New|Dir" &&
> + >"New|Dir/New&File.c" &&
> +
> + test_completion "git test-path-comp N" \
> + "New|Dir" && # Bash will turn this into "New\|Dir/"
> + test_completion "git test-path-comp New\\|D" \
> + "New|Dir" &&
> + test_completion "git test-path-comp New\\|Dir/N" \
> + "New|Dir/New&File.c" && # Bash will turn this into
> + # "New\|Dir/New\&File.c "
> + test_completion "git test-path-comp New\\|Dir/New\\&F" \
> + "New|Dir/New&File.c"
> +'
> +
> +test_expect_failure 'complete files - quoted characters on cmdline' '
> + test_when_finished "rm -r \"New(Dir\"" &&
This does not use -rf unlike the previous one?
> + mkdir "New(Dir" &&
> + >"New(Dir/New)File.c" &&
> +
> + test_completion "git test-path-comp \"New(D" "New(Dir" &&
> + test_completion "git test-path-comp \"New(Dir/New)F" \
> + "New(Dir/New)File.c"
> +'
OK.
> +test_expect_failure 'complete files - UTF-8 in ls-files output' '
> + test_when_finished "rm -r árvíztűrő" &&
> + mkdir árvíztűrő &&
> + >"árvíztűrő/Сайн яваарай" &&
> +
> + test_completion "git test-path-comp á" "árvíztűrő" &&
> + test_completion "git test-path-comp árvíztűrő/С" \
> + "árvíztűrő/Сайн яваарай"
> +'
> +
> +if test_have_prereq !MINGW &&
> + mkdir 'New\Dir' 2>/dev/null &&
> + touch 'New\Dir/New"File.c' 2>/dev/null
> +then
> + test_set_prereq FUNNYNAMES_BS_DQ
> +else
> + say "Your filesystem does not allow \\ and \" in filenames."
> + rm -rf 'New\Dir'
> +fi
> +test_expect_failure FUNNYNAMES_BS_DQ \
> + 'complete files - C-style escapes in ls-files output' '
> + test_when_finished "rm -r \"New\\\\Dir\"" &&
> +
> + test_completion "git test-path-comp N" "New\\Dir" &&
> + test_completion "git test-path-comp New\\\\D" "New\\Dir" &&
> + test_completion "git test-path-comp New\\\\Dir/N" \
> + "New\\Dir/New\"File.c" &&
> + test_completion "git test-path-comp New\\\\Dir/New\\\"F" \
> + "New\\Dir/New\"File.c"
> +'
> +
> +if test_have_prereq !MINGW &&
> + mkdir $'New\034Special\035Dir' 2>/dev/null &&
> + touch $'New\034Special\035Dir/New\036Special\037File' 2>/dev/null
The $'...' quote is bash-ism, but this is about testing bash
completion, so as long as we make sure non-bash shells won't touch
this part of the test, it is OK.
Do we want to test a more common case of a filename that is two
words with SP in between, i.e.
$ >'hello world' && git add hel<TAB>
or is it known to work just fine without quoting/escaping (because
the funny we care about is output from ls-files and SP is not special
in its one-item-at-a-time-on-a-line output) and not worth checking?
next prev parent reply other threads:[~2018-04-17 3:49 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-17 8:17 [PATCH 1/2] completion: improve ls-files filter performance Clemens Buchacher
2018-03-17 8:17 ` [PATCH 2/2] completion: simplify ls-files filter Clemens Buchacher
2018-03-18 0:16 ` Junio C Hamano
2018-03-18 1:26 ` SZEDER Gábor
2018-03-18 5:28 ` Junio C Hamano
2018-04-04 7:46 ` [PATCH] completion: improve ls-files filter performance Clemens Buchacher
2018-04-04 16:16 ` Johannes Schindelin
2018-04-16 22:41 ` [PATCH 00/11] completion: path completion improvements: speedup and quoted paths SZEDER Gábor
2018-04-16 22:41 ` [PATCH 01/11] t9902-completion: add tests demonstrating issues with quoted pathnames SZEDER Gábor
2018-04-17 3:48 ` Junio C Hamano [this message]
2018-04-17 23:32 ` SZEDER Gábor
2018-04-17 23:41 ` SZEDER Gábor
2018-04-18 1:22 ` Junio C Hamano
2018-04-26 0:25 ` SZEDER Gábor
2018-04-26 2:11 ` Junio C Hamano
2018-05-18 14:17 ` [PATCH 0/2] Test improvements for 'sg/complete-paths' SZEDER Gábor
2018-05-18 14:17 ` [PATCH 1/2] completion: don't return with error from __gitcomp_file_direct() SZEDER Gábor
2018-05-18 14:17 ` [PATCH 2/2] t9902-completion: exercise __git_complete_index_file() directly SZEDER Gábor
2018-05-18 19:25 ` Eric Sunshine
2018-05-21 12:14 ` Johannes Schindelin
2018-05-21 11:35 ` [PATCH 0/2] Test improvements for 'sg/complete-paths' Johannes Schindelin
2018-05-21 12:17 ` Johannes Schindelin
2018-04-18 12:31 ` [PATCH 01/11] t9902-completion: add tests demonstrating issues with quoted pathnames Johannes Schindelin
2018-04-19 19:08 ` SZEDER Gábor
2018-04-16 22:41 ` [PATCH 02/11] completion: move __git_complete_index_file() next to its helpers SZEDER Gábor
2018-04-16 22:41 ` [PATCH 03/11] completion: simplify prefix path component handling during path completion SZEDER Gábor
2018-04-16 22:41 ` [PATCH 04/11] completion: support completing non-ASCII pathnames SZEDER Gábor
2018-04-16 22:41 ` [PATCH 05/11] completion: improve handling quoted paths on the command line SZEDER Gábor
2018-04-16 22:41 ` [PATCH 06/11] completion: let 'ls-files' and 'diff-index' filter matching paths SZEDER Gábor
2018-04-16 22:41 ` [PATCH 07/11] completion: use 'awk' to strip trailing path components SZEDER Gábor
2018-04-16 22:41 ` [PATCH 08/11] t9902-completion: ignore COMPREPLY element order in some tests SZEDER Gábor
2018-04-16 22:41 ` [PATCH 09/11] completion: remove repeated dirnames with 'awk' during path completion SZEDER Gábor
2018-04-16 22:42 ` [PATCH 10/11] completion: improve handling quoted paths in 'git ls-files's output SZEDER Gábor
2018-04-16 22:42 ` [PATCH 11/11] completion: fill COMPREPLY directly when completing paths SZEDER Gábor
2018-03-18 0:13 ` [PATCH 1/2] completion: improve ls-files filter performance Junio C Hamano
2018-03-19 17:12 ` Johannes Schindelin
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=xmqq7ep6v6ft.fsf@gitster-ct.c.googlers.com \
--to=gitster@pobox.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=drizzd@gmx.net \
--cc=git@vger.kernel.org \
--cc=manlio.perillo@gmail.com \
--cc=szeder.dev@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.