From: Luke Diamand <luke@diamand.org>
To: git@vger.kernel.org
Cc: Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCHv3 3/3] git-p4: tests: use test-chmtime in place of touch
Date: Tue, 19 May 2015 23:36:32 +0100 [thread overview]
Message-ID: <555BBAF0.7070008@diamand.org> (raw)
In-Reply-To: <1432074198-13806-4-git-send-email-luke@diamand.org>
On 19/05/15 23:23, Luke Diamand wrote:
> Using "touch" for P4EDITOR means that the tests can be a bit
> racy, since git-p4 checks the timestamp has been updated and
> fails if the timestamp is not updated.
Junio - this one is incorrect where it changes t9805 around the test
called "no config, unedited, say yes" (it didn't need changing at all).
I can resend all three, or just the last one. Please let me know which
is easier.
Thanks
Luke
>
> Use test-chmtime instead, which is designed for this.
>
> Signed-off-by: Luke Diamand <luke@diamand.org>
> ---
> t/t9803-git-p4-shell-metachars.sh | 4 ++--
> t/t9805-git-p4-skip-submit-edit.sh | 2 +-
> t/t9813-git-p4-preserve-users.sh | 7 ++++---
> 3 files changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/t/t9803-git-p4-shell-metachars.sh b/t/t9803-git-p4-shell-metachars.sh
> index fbacff3..d950c7d 100755
> --- a/t/t9803-git-p4-shell-metachars.sh
> +++ b/t/t9803-git-p4-shell-metachars.sh
> @@ -28,7 +28,7 @@ test_expect_success 'shell metachars in filenames' '
> echo f2 >"file with spaces" &&
> git add "file with spaces" &&
> git commit -m "add files" &&
> - P4EDITOR=touch git p4 submit
> + P4EDITOR="test-chmtime +5" git p4 submit
> ) &&
> (
> cd "$cli" &&
> @@ -47,7 +47,7 @@ test_expect_success 'deleting with shell metachars' '
> git rm foo\$bar &&
> git rm file\ with\ spaces &&
> git commit -m "remove files" &&
> - P4EDITOR=touch git p4 submit
> + P4EDITOR="test-chmtime +5" git p4 submit
> ) &&
> (
> cd "$cli" &&
> diff --git a/t/t9805-git-p4-skip-submit-edit.sh b/t/t9805-git-p4-skip-submit-edit.sh
> index 5fbf904..dc8fc0c 100755
> --- a/t/t9805-git-p4-skip-submit-edit.sh
> +++ b/t/t9805-git-p4-skip-submit-edit.sh
> @@ -17,7 +17,6 @@ test_expect_success 'init depot' '
> )
> '
>
> -# this works because P4EDITOR is set to true
The above line shouldn't be removed, but it's worth noting that it gets
set to true in lib-git-p4.sh.
> test_expect_success 'no config, unedited, say yes' '
> git p4 clone --dest="$git" //depot &&
> test_when_finished cleanup_git &&
> @@ -25,6 +24,7 @@ test_expect_success 'no config, unedited, say yes' '
> cd "$git" &&
> echo line >>file1 &&
> git commit -a -m "change 2" &&
> + P4EDITOR="test-chmtime +5" &&
The above line should not be added.
> echo y | git p4 submit &&
> p4 changes //depot/... >wc &&
> test_line_count = 2 wc
> diff --git a/t/t9813-git-p4-preserve-users.sh b/t/t9813-git-p4-preserve-users.sh
> index 166b840..fe65788 100755
> --- a/t/t9813-git-p4-preserve-users.sh
> +++ b/t/t9813-git-p4-preserve-users.sh
> @@ -53,7 +53,8 @@ test_expect_success 'preserve users' '
> git commit --author "Alice <alice@example.com>" -m "a change by alice" file1 &&
> git commit --author "Bob <bob@example.com>" -m "a change by bob" file2 &&
> git config git-p4.skipSubmitEditCheck true &&
> - P4EDITOR=touch P4USER=alice P4PASSWD=secret git p4 commit --preserve-user &&
> + P4EDITOR="test-chmtime +5" P4USER=alice P4PASSWD=secret &&
> + git p4 commit --preserve-user &&
> p4_check_commit_author file1 alice &&
> p4_check_commit_author file2 bob
> )
> @@ -69,7 +70,7 @@ test_expect_success 'refuse to preserve users without perms' '
> git config git-p4.skipSubmitEditCheck true &&
> echo "username-noperms: a change by alice" >>file1 &&
> git commit --author "Alice <alice@example.com>" -m "perms: a change by alice" file1 &&
> - P4EDITOR=touch P4USER=bob P4PASSWD=secret &&
> + P4EDITOR="test-chmtime +5" P4USER=bob P4PASSWD=secret &&
> export P4EDITOR P4USER P4PASSWD &&
> test_must_fail git p4 commit --preserve-user &&
> ! git diff --exit-code HEAD..p4/master
> @@ -87,7 +88,7 @@ test_expect_success 'preserve user where author is unknown to p4' '
> git commit --author "Bob <bob@example.com>" -m "preserve: a change by bob" file1 &&
> echo "username-unknown: a change by charlie" >>file1 &&
> git commit --author "Charlie <charlie@example.com>" -m "preserve: a change by charlie" file1 &&
> - P4EDITOR=touch P4USER=alice P4PASSWD=secret &&
> + P4EDITOR="test-chmtime +5" P4USER=alice P4PASSWD=secret &&
> export P4EDITOR P4USER P4PASSWD &&
> test_must_fail git p4 commit --preserve-user &&
> ! git diff --exit-code HEAD..p4/master &&
>
next prev parent reply other threads:[~2015-05-19 22:37 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-19 6:40 git-p4: test t9820-git-p4-editor-handling.sh failing Luke Diamand
2015-05-19 15:44 ` Junio C Hamano
2015-05-19 22:23 ` [PATCHv3 0/3] git-p4: fix handling of multi-word P4EDITOR Luke Diamand
2015-05-19 22:23 ` [PATCHv3 1/3] git-p4: add failing test for P4EDITOR handling Luke Diamand
2015-05-20 19:54 ` Junio C Hamano
2015-05-20 20:56 ` Junio C Hamano
2015-05-20 21:43 ` Luke Diamand
2015-05-19 22:23 ` [PATCHv3 2/3] git-p4: fix handling of multi-word P4EDITOR Luke Diamand
2015-05-19 22:23 ` [PATCHv3 3/3] git-p4: tests: use test-chmtime in place of touch Luke Diamand
2015-05-19 22:36 ` Luke Diamand [this message]
2015-05-24 18:56 ` Junio C Hamano
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=555BBAF0.7070008@diamand.org \
--to=luke@diamand.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).