From: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Jeff King <peff@peff.net>,
git@vger.kernel.org, "Shawn O. Pearce" <spearce@spearce.org>
Subject: Re: git stash: status from current dir not top dir?
Date: Sat, 19 Mar 2011 10:24:24 +0100 [thread overview]
Message-ID: <4D847648.6080404@gmail.com> (raw)
In-Reply-To: <7vsjul35p3.fsf@alter.siamese.dyndns.org>
W dniu 17.03.2011 20:30, Junio C Hamano pisze:
> Piotr Krukowiecki <piotr.krukowiecki@gmail.com> writes:
>
>> Now I don't know how should I handle this:
>>
>> 1. unset it just before "git stash apply" in my test
>> A safe, local change
>
> This is the preferred method; in addition to "a safe local", more
> importantly, at that point you are testing what you _want_ to be testing,
> namely, how the output appears to the _real_ end users who do not use
> verbose message. So for that purpose, mucking locally with MERGE_VERBOSITY
> is perfectly acceptable.
>
> You would not just "unset it just before", but "unset around it" in a
> subshell like this:
>
> git stash &&
> (
> sane_unset GIT_MERGE_VERBOSITY &&
> git stash apply
> ) >../actual &&
> git status >../expect &&
> test_cmp ../expect ../actual
>
> so that if somebody adds new tests later in the script, they are not
> affected by this change.
>
> Write your test_cmp always to compare expected with actual, not the other
> way around, so that the diff output you see when the test is run under -v
> option shows the changes from what is expected.
>
> Thanks.
Thanks, updated according to your suggestions.
I've also added a check to see if the output contains a relative path
(so we really test not only that git-stash shows the same status
as git-status, but that the paths are relative).
I'm not resending the original patch for git-stash.sh - I don't know if
it's expected to always send full set of patches?
---8<---
From: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
Date: Mon, 14 Mar 2011 20:19:36 +0100
Subject: [PATCH 2/2] Add test: git stash shows status relative to current dir
Signed-off-by: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
---
t/t3903-stash.sh | 19 +++++++++++++++++++
1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/t/t3903-stash.sh b/t/t3903-stash.sh
index 6fd560c..13f9ae8 100755
--- a/t/t3903-stash.sh
+++ b/t/t3903-stash.sh
@@ -556,4 +556,23 @@ test_expect_success 'stash branch should not drop the stash if the branch exists
git rev-parse stash@{0} --
'
+test_expect_success 'stash apply shows status same as git status (relative to current directory)' '
+ git stash clear &&
+ echo 1 > subdir/subfile1 &&
+ echo 2 > subdir/subfile2 &&
+ git add subdir/subfile1 &&
+ git commit -m subdir &&
+ cd subdir &&
+ echo x > subfile1 &&
+ echo x > ../file &&
+ git stash &&
+ (
+ sane_unset GIT_MERGE_VERBOSITY &&
+ git stash apply
+ ) > ../actual &&
+ git status > ../expect &&
+ test_cmp ../expect ../actual &&
+ grep "[.][.]/actual" ../actual
+'
+
test_done
--
1.7.4.1.296.gca6da
--
Piotr Krukowiecki
prev parent reply other threads:[~2011-03-19 9:24 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-11 20:49 git stash: status from current dir not top dir? Piotr Krukowiecki
2011-03-11 22:32 ` Jeff King
2011-03-12 8:57 ` Piotr Krukowiecki
2011-03-14 7:29 ` Junio C Hamano
2011-03-14 19:45 ` Piotr Krukowiecki
2011-03-17 18:13 ` Piotr Krukowiecki
2011-03-17 19:30 ` Junio C Hamano
2011-03-19 9:24 ` Piotr Krukowiecki [this message]
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=4D847648.6080404@gmail.com \
--to=piotr.krukowiecki@gmail.com \
--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.