From: Paul Tan <pyokagan@gmail.com>
To: git@vger.kernel.org
Cc: Stefan Beller <sbeller@google.com>,
Johannes Schindelin <johannes.schindelin@gmx.de>,
Paul Tan <pyokagan@gmail.com>,
Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Subject: [PATCH v4 3/8] t5520: test for failure if index has unresolved entries
Date: Mon, 18 May 2015 21:32:53 +0800 [thread overview]
Message-ID: <1431955978-17890-4-git-send-email-pyokagan@gmail.com> (raw)
In-Reply-To: <1431955978-17890-1-git-send-email-pyokagan@gmail.com>
Commit d38a30d (Be more user-friendly when refusing to do something
because of conflict., 2010-01-12) introduced code paths to git-pull
which will error out with user-friendly advices if the user is in the
middle of a merge or has unmerged files.
Implement tests to ensure that git-pull will not run, and will print
these advices, if the user is in the middle of a merge or has unmerged
files in the index.
Signed-off-by: Paul Tan <pyokagan@gmail.com>
---
* Use the stricter "Pull is not possible because you have unmerged files"
instead of you have unmerged files" as git-merge will also raise a similar
error "merge is not possible because you have unmerged files"
* Also, grep for "You have not concluded your merge" instead of "have not
concluded your merge" as the latter reads weird to me personally.
t/t5520-pull.sh | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh
index 4a2c0a1..3bc0594 100755
--- a/t/t5520-pull.sh
+++ b/t/t5520-pull.sh
@@ -164,6 +164,26 @@ test_expect_success 'fail if upstream branch does not exist' '
test "$(cat file)" = file
'
+test_expect_success 'fail if the index has unresolved entries' '
+ git checkout -b third second^ &&
+ test_when_finished "git checkout -f copy && git branch -D third" &&
+ test "$(cat file)" = file &&
+ echo modified2 >file &&
+ git commit -a -m modified2 &&
+ test -z "$(git ls-files -u)" &&
+ test_must_fail git pull . second &&
+ test -n "$(git ls-files -u)" &&
+ cp file expected &&
+ test_must_fail git pull . second 2>err &&
+ test_i18ngrep "Pull is not possible because you have unmerged files" err &&
+ test_cmp expected file &&
+ git add file &&
+ test -z "$(git ls-files -u)" &&
+ test_must_fail git pull . second 2>err &&
+ test_i18ngrep "You have not concluded your merge" err &&
+ test_cmp expected file
+'
+
test_expect_success '--rebase' '
git branch to-rebase &&
echo modified again > file &&
--
2.1.4
next prev parent reply other threads:[~2015-05-18 13:34 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-18 13:32 [PATCH v4 0/8] Improve git-pull test coverage Paul Tan
2015-05-18 13:32 ` [PATCH v4 1/8] t5520: prevent field splitting in content comparisons Paul Tan
2015-05-18 18:07 ` Junio C Hamano
2015-05-18 13:32 ` [PATCH v4 2/8] t5520: test no merge candidates cases Paul Tan
2015-05-18 15:08 ` Johannes Schindelin
2015-05-18 17:46 ` Junio C Hamano
2015-05-18 18:55 ` debugging git tests, was: " Jeff King
2015-05-18 19:35 ` Junio C Hamano
2015-05-19 13:29 ` Johannes Schindelin
2015-06-05 10:44 ` Jeff King
2015-05-18 13:32 ` Paul Tan [this message]
2015-05-18 15:13 ` [PATCH v4 3/8] t5520: test for failure if index has unresolved entries Johannes Schindelin
2015-05-21 8:15 ` Paul Tan
2015-05-18 13:32 ` [PATCH v4 4/8] t5520: test work tree fast-forward when fetch updates head Paul Tan
2015-05-18 15:22 ` Johannes Schindelin
2015-05-18 13:32 ` [PATCH v4 5/8] t5520: test --rebase with multiple branches Paul Tan
2015-05-18 13:32 ` [PATCH v4 6/8] t5520: test --rebase failure on unborn branch with index Paul Tan
2015-05-18 18:00 ` Stefan Beller
2015-05-21 8:51 ` Paul Tan
2015-05-18 13:32 ` [PATCH v4 7/8] t5521: test --dry-run does not make any changes Paul Tan
2015-05-18 13:32 ` [PATCH v4 8/8] t5520: check reflog action in fast-forward merge Paul Tan
2015-05-18 15:20 ` Johannes Schindelin
2015-05-21 8:07 ` Paul Tan
2015-05-21 17:29 ` 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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1431955978-17890-4-git-send-email-pyokagan@gmail.com \
--to=pyokagan@gmail.com \
--cc=Matthieu.Moy@grenoble-inp.fr \
--cc=git@vger.kernel.org \
--cc=johannes.schindelin@gmx.de \
--cc=sbeller@google.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 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 NNTP newsgroup(s).