From: Denton Liu <liu.denton@gmail.com>
To: Git Mailing List <git@vger.kernel.org>
Cc: Junio C Hamano <gitster@pobox.com>, Taylor Blau <me@ttaylorr.com>,
Johannes Sixt <j6t@kdbg.org>,
Eric Sunshine <sunshine@sunshineco.com>
Subject: [PATCH v2 0/4] t: replace incorrect test_must_fail usage (part 5)
Date: Wed, 20 May 2020 20:24:14 -0400 [thread overview]
Message-ID: <cover.1590019226.git.liu.denton@gmail.com> (raw)
In-Reply-To: <cover.1588162842.git.liu.denton@gmail.com>
Hi all,
This is mostly a resend of what's currently queued in
"dl/test-must-fail-fixes-5" except with a tiny bit of cleanup on the tip
patch. I'd appreciate a review on this series so that we can finally get
rid of that "Needs review" on the What's Cooking messages ;)
The overall scope of these patches is to replace inappropriate uses of
test_must_fail. IOW, we should only allow test_must_fail to run on `git`
and `test-tool`. Ultimately, we will conclude by making test_must_fail
error out on non-git commands. An advance view of the final series can
be found here[1].
This is the fifth part. It focuses on lib-submodule-update.sh and tests
that make use of it.
The first part can be found here[2]. The second part can be found
here[3]. The third part can be found here[4]. The fourth part can be
found here[5].
Changes since v1.2:
* In "lib-submodule-update: pass OVERWRITING_FAIL", use if-then return
to reduce the amount of code churn
[1]: (may be rebased at any time) https://github.com/Denton-L/git/tree/ready/cleanup-test-must-fail2
[2]: https://lore.kernel.org/git/cover.1576583819.git.liu.denton@gmail.com/
[3]: https://lore.kernel.org/git/cover.1577454401.git.liu.denton@gmail.com/
[4]: https://lore.kernel.org/git/cover.1585209554.git.liu.denton@gmail.com/
[5]: https://lore.kernel.org/git/cover.1587372771.git.liu.denton@gmail.com/
Denton Liu (4):
lib-submodule-update: add space after function name
lib-submodule-update: consolidate --recurse-submodules
lib-submodule-update: prepend "git" to $command
lib-submodule-update: pass OVERWRITING_FAIL
t/lib-submodule-update.sh | 55 ++++++++++++++++++++++----------
t/t1013-read-tree-submodule.sh | 4 +--
t/t2013-checkout-submodule.sh | 4 +--
t/t3426-rebase-submodule.sh | 8 ++---
t/t3512-cherry-pick-submodule.sh | 2 +-
t/t3513-revert-submodule.sh | 7 +++-
t/t3906-stash-submodule.sh | 8 +++--
t/t4137-apply-submodule.sh | 10 +++---
t/t4255-am-submodule.sh | 10 +++---
t/t5572-pull-submodule.sh | 16 +++++-----
t/t6041-bisect-submodule.sh | 8 +++--
t/t7112-reset-submodule.sh | 6 ++--
t/t7613-merge-submodule.sh | 8 ++---
13 files changed, 92 insertions(+), 54 deletions(-)
Range-diff against v1:
1: f148526dae = 1: ba2f642e0f lib-submodule-update: add space after function name
2: b7d7d0d761 = 2: 16d0a3eb9a lib-submodule-update: consolidate --recurse-submodules
3: 4922e75f2a = 3: 578bab6f1a lib-submodule-update: prepend "git" to $command
4: a0a8fbd881 ! 4: 48598e3f98 lib-submodule-update: pass OVERWRITING_FAIL
@@ Commit message
with a file buffer so that the return code of the first command is not
lost.
- This patch can be better viewed with `--ignore-all-space`.
-
## t/lib-submodule-update.sh ##
@@ t/lib-submodule-update.sh: test_submodule_content () {
# a removed submodule.
@@ t/t3513-revert-submodule.sh: git_revert () {
git status -su >expect &&
ls -1pR * >>expect &&
tar cf "$TRASH_DIRECTORY/tmp.tar" * &&
-- git checkout "$1" &&
-- git revert HEAD &&
-- rm -rf * &&
-- tar xf "$TRASH_DIRECTORY/tmp.tar" &&
-- git status -su >actual &&
-- ls -1pR * >>actual &&
-- test_cmp expect actual &&
-- git revert HEAD
+ $OVERWRITING_FAIL git checkout "$1" &&
-+ if test -z "$OVERWRITING_FAIL"
++ if test -n "$OVERWRITING_FAIL"
+ then
-+ git checkout "$1" &&
-+ git revert HEAD &&
-+ rm -rf * &&
-+ tar xf "$TRASH_DIRECTORY/tmp.tar" &&
-+ git status -su >actual &&
-+ ls -1pR * >>actual &&
-+ test_cmp expect actual &&
-+ git revert HEAD
-+ fi
- }
-
- KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1
++ return
++ fi &&
+ git checkout "$1" &&
+ git revert HEAD &&
+ rm -rf * &&
## t/t3906-stash-submodule.sh ##
@@ t/t3906-stash-submodule.sh: test_description='stash can handle submodules'
@@ t/t3906-stash-submodule.sh: test_description='stash can handle submodules'
git status -su >expect &&
ls -1pR * >>expect &&
- git read-tree -u -m "$1" &&
-- git stash &&
-- git status -su >actual &&
-- ls -1pR * >>actual &&
-- test_cmp expect actual &&
-- git stash apply
+ $OVERWRITING_FAIL git read-tree -u -m "$1" &&
-+ if test -z "$OVERWRITING_FAIL"
++ if test -n "$OVERWRITING_FAIL"
+ then
-+ git stash &&
-+ git status -su >actual &&
-+ ls -1pR * >>actual &&
-+ test_cmp expect actual &&
-+ git stash apply
-+ fi
- }
-
- KNOWN_FAILURE_STASH_DOES_IGNORE_SUBMODULE_CHANGES=1
++ return
++ fi &&
+ git stash &&
+ git status -su >actual &&
+ ls -1pR * >>actual &&
## t/t4137-apply-submodule.sh ##
@@ t/t4137-apply-submodule.sh: test_description='git apply handling submodules'
@@ t/t6041-bisect-submodule.sh: git_bisect () {
tar cf "$TRASH_DIRECTORY/tmp.tar" * &&
GOOD=$(git rev-parse --verify HEAD) &&
- git checkout "$1" &&
-- echo "foo" >bar &&
-- git add bar &&
-- git commit -m "bisect bad" &&
-- BAD=$(git rev-parse --verify HEAD) &&
-- git reset --hard HEAD^^ &&
-- git submodule update &&
-- git bisect start &&
-- git bisect good $GOOD &&
-- rm -rf * &&
-- tar xf "$TRASH_DIRECTORY/tmp.tar" &&
-- git status -su >actual &&
-- ls -1pR * >>actual &&
-- test_cmp expect actual &&
-- git bisect bad $BAD
+ $OVERWRITING_FAIL git checkout "$1" &&
-+ if test -z "$OVERWRITING_FAIL"
++ if test -n "$OVERWRITING_FAIL"
+ then
-+ echo "foo" >bar &&
-+ git add bar &&
-+ git commit -m "bisect bad" &&
-+ BAD=$(git rev-parse --verify HEAD) &&
-+ git reset --hard HEAD^^ &&
-+ git submodule update &&
-+ git bisect start &&
-+ git bisect good $GOOD &&
-+ rm -rf * &&
-+ tar xf "$TRASH_DIRECTORY/tmp.tar" &&
-+ git status -su >actual &&
-+ ls -1pR * >>actual &&
-+ test_cmp expect actual &&
-+ git bisect bad $BAD
-+ fi
- }
-
- test_submodule_switch_func "git_bisect"
++ return
++ fi &&
+ echo "foo" >bar &&
+ git add bar &&
+ git commit -m "bisect bad" &&
--
2.27.0.rc0.114.g141fe7d276
next prev parent reply other threads:[~2020-05-21 0:24 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-29 12:22 [PATCH 0/4] t: replace incorrect test_must_fail usage (part 5) Denton Liu
2020-04-29 12:22 ` [PATCH 1/4] lib-submodule-update: add space after function name Denton Liu
2020-04-29 12:22 ` [PATCH 2/4] lib-submodule-update: consolidate --recurse-submodules Denton Liu
2020-04-29 18:06 ` Junio C Hamano
2020-04-29 12:22 ` [PATCH 3/4] lib-submodule-update: prepend "git" to $command Denton Liu
2020-04-29 12:22 ` [PATCH 4/4] lib-submodule-update: pass OVERWRITING_FAIL Denton Liu
2020-04-29 19:24 ` Junio C Hamano
2020-04-30 1:10 ` Denton Liu
2020-04-30 3:41 ` Junio C Hamano
2020-04-30 9:22 ` Denton Liu
2020-04-30 10:25 ` [PATCH v1.1] " Denton Liu
2020-04-30 20:38 ` Junio C Hamano
2020-05-01 9:35 ` Denton Liu
2020-05-01 16:51 ` Junio C Hamano
2020-05-05 11:43 ` [PATCH v1.2] " Denton Liu
2020-04-29 19:50 ` [PATCH 0/4] t: replace incorrect test_must_fail usage (part 5) Taylor Blau
2020-04-29 21:30 ` Johannes Sixt
2020-04-29 21:42 ` Re* " Junio C Hamano
2020-04-29 21:49 ` Taylor Blau
2020-04-29 22:10 ` Junio C Hamano
2020-04-29 22:16 ` Taylor Blau
2020-04-29 22:36 ` Junio C Hamano
2020-04-29 22:41 ` Taylor Blau
2020-04-29 22:00 ` Eric Sunshine
2020-04-29 22:06 ` Junio C Hamano
2020-05-21 0:24 ` Denton Liu [this message]
2020-05-21 0:24 ` [PATCH v2 1/4] lib-submodule-update: add space after function name Denton Liu
2020-05-21 0:24 ` [PATCH v2 2/4] lib-submodule-update: consolidate --recurse-submodules Denton Liu
2020-05-21 0:24 ` [PATCH v2 3/4] lib-submodule-update: prepend "git" to $command Denton Liu
2020-05-21 10:39 ` Philip Oakley
2020-05-21 11:25 ` Denton Liu
2020-05-21 0:24 ` [PATCH v2 4/4] lib-submodule-update: pass OVERWRITING_FAIL Denton Liu
2020-05-21 18:29 ` Jeff King
2020-05-21 18:55 ` Denton Liu
2020-05-21 21:11 ` Junio C Hamano
2020-05-21 22:37 ` Jeff King
2020-05-21 18:34 ` Jeff King
2020-05-21 16:47 ` [PATCH v2 0/4] t: replace incorrect test_must_fail usage (part 5) Junio C Hamano
2020-05-21 18:35 ` Jeff King
2020-06-11 17:41 ` [PATCH v3 " Denton Liu
2020-06-11 17:41 ` [PATCH v3 1/4] lib-submodule-update: add space after function name Denton Liu
2020-06-11 17:41 ` [PATCH v3 2/4] lib-submodule-update: consolidate --recurse-submodules Denton Liu
2020-06-11 17:41 ` [PATCH v3 3/4] lib-submodule-update: prepend "git" to $command Denton Liu
2020-06-11 17:41 ` [PATCH v3 4/4] lib-submodule-update: use callbacks in test_submodule_switch_common() Denton Liu
2020-06-12 18:46 ` Junio C Hamano
2020-06-18 6:11 ` Junio C Hamano
2020-06-18 8:49 ` [PATCH v4 0/4] t: replace incorrect test_must_fail usage (part 5) Denton Liu
2020-06-18 8:49 ` [PATCH v4 1/4] lib-submodule-update: add space after function name Denton Liu
2020-06-18 8:49 ` [PATCH v4 2/4] lib-submodule-update: consolidate --recurse-submodules Denton Liu
2020-06-18 8:49 ` [PATCH v4 3/4] lib-submodule-update: prepend "git" to $command Denton Liu
2020-06-18 8:49 ` [PATCH v4 4/4] lib-submodule-update: use callbacks in test_submodule_switch_common() Denton Liu
2020-06-18 18:15 ` Jeff King
2020-06-23 10:28 ` [PATCH v5 0/4] t: replace incorrect test_must_fail usage (part 5) Denton Liu
2020-06-23 10:28 ` [PATCH v5 1/4] lib-submodule-update: add space after function name Denton Liu
2020-06-23 10:28 ` [PATCH v5 2/4] lib-submodule-update: consolidate --recurse-submodules Denton Liu
2020-06-23 10:28 ` [PATCH v5 3/4] lib-submodule-update: prepend "git" to $command Denton Liu
2020-06-23 10:28 ` [PATCH v5 4/4] lib-submodule-update: use callbacks in test_submodule_switch_common() Denton Liu
2020-06-23 18:40 ` [PATCH v5 0/4] t: replace incorrect test_must_fail usage (part 5) Jeff King
2020-06-23 20:21 ` [PATCH v5.1] lib-submodule-update: pass 'test_must_fail' as an argument Denton Liu
2020-06-23 20:04 ` Denton Liu
2020-06-23 23:54 ` Junio C Hamano
2020-06-24 0:16 ` Đoàn Trần Công Danh
2020-06-24 8:50 ` [PATCH v5.2] " Denton Liu
2020-06-24 16:00 ` Junio C Hamano
2020-06-23 20:35 ` [PATCH v5.1] " Denton Liu
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=cover.1590019226.git.liu.denton@gmail.com \
--to=liu.denton@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j6t@kdbg.org \
--cc=me@ttaylorr.com \
--cc=sunshine@sunshineco.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).