From: Denton Liu <liu.denton@gmail.com>
To: Git Mailing List <git@vger.kernel.org>
Subject: [PATCH v2 0/8] t: replace incorrect test_must_fail usage (part 3)
Date: Thu, 26 Mar 2020 04:27:47 -0400 [thread overview]
Message-ID: <cover.1585209554.git.liu.denton@gmail.com> (raw)
In-Reply-To: <cover.1585115341.git.liu.denton@gmail.com>
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 third part. It focuses on t5*.sh.
The first part can be found here[2]. The second part can be found here[3].
Changes since v1:
* Broke up long generate_references() lines for clarity in 2/8
* For-loop &&-chain and renamed variable to "ref" in 2/8
* Cleaned up commit message in 2/8
* Rewrote 4/8 with a simpler test case
[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/
Denton Liu (8):
t5512: don't use `test_must_fail test_cmp`
t5512: stop losing git exit code in here-docs
t5512: stop losing return codes of git commands
t5550: simplify no matching line check
t5607: reorder `nongit test_must_fail`
t5612: don't use `test_must_fail test_cmp`
t5612: stop losing return codes of git commands
t5801: teach compare_refs() to accept !
t/t5512-ls-remote.sh | 80 ++++++++++++++++++++------------------
t/t5550-http-fetch-dumb.sh | 4 +-
t/t5607-clone-bundle.sh | 2 +-
t/t5612-clone-refspec.sh | 26 ++++++-------
t/t5801-remote-helpers.sh | 10 ++++-
5 files changed, 66 insertions(+), 56 deletions(-)
Range-diff against v1:
1: 3d7dc8428d = 1: 3d7dc8428d t5512: don't use `test_must_fail test_cmp`
2: 674de50db2 ! 2: 97bc46e4a9 t5512: generate references with generate_references()
@@ Metadata
Author: Denton Liu <liu.denton@gmail.com>
## Commit message ##
- t5512: generate references with generate_references()
+ t5512: stop losing git exit code in here-docs
The expected references are generated using a here-doc with some inline
- subshells. If one of the `git rev-parse` invocations within the
- subshells failed, its return code is swallowed and we won't know about
- it. Replace these here-docs with generate_references(), which actually
- reports when `git rev-parse` fails.
+ command substitutions. If one of the `git rev-parse` invocations within
+ the command substitutions fails, its return code is swallowed and we
+ won't know about it. Replace these command substitutions with
+ generate_references(), which actually reports when `git rev-parse`
+ fails.
## t/t5512-ls-remote.sh ##
@@ t/t5512-ls-remote.sh: test_description='git ls-remote'
@@ t/t5512-ls-remote.sh: test_description='git ls-remote'
. ./test-lib.sh
+generate_references () {
-+ for i
++ for ref
+ do
-+ oid=$(git rev-parse "$i") || return 1
-+ printf '%s\t%s\n' "$oid" "$i"
++ oid=$(git rev-parse "$ref") &&
++ printf '%s\t%s\n' "$oid" "$ref" || return 1
+ done
+}
+
@@ t/t5512-ls-remote.sh: test_expect_success 'ls-remote self' '
- $(git rev-parse mark1.2) refs/tags/mark1.2
- $(git rev-parse mark1.10) refs/tags/mark1.10
- EOF
-+ generate_references refs/tags/mark refs/tags/mark1.1 refs/tags/mark1.2 refs/tags/mark1.10 >expect &&
++ generate_references \
++ refs/tags/mark \
++ refs/tags/mark1.1 \
++ refs/tags/mark1.2 \
++ refs/tags/mark1.10 >expect &&
git ls-remote --sort="version:refname" --tags self >actual &&
test_cmp expect actual
'
@@ t/t5512-ls-remote.sh: test_expect_success 'ls-remote self' '
- $(git rev-parse mark1.1) refs/tags/mark1.1
- $(git rev-parse mark) refs/tags/mark
- EOF
-+ generate_references refs/tags/mark1.10 refs/tags/mark1.2 refs/tags/mark1.1 refs/tags/mark >expect &&
++ generate_references \
++ refs/tags/mark1.10 \
++ refs/tags/mark1.2 \
++ refs/tags/mark1.1 \
++ refs/tags/mark >expect &&
git ls-remote --sort="-version:refname" --tags self >actual &&
test_cmp expect actual
'
@@ t/t5512-ls-remote.sh: test_expect_success 'ls-remote self' '
- $(git rev-parse mark1.1) refs/tags/mark1.1
- $(git rev-parse mark) refs/tags/mark
- EOF
-+ generate_references refs/tags/mark1.2 refs/tags/mark1.10 refs/tags/mark1.1 refs/tags/mark >expect &&
++ generate_references \
++ refs/tags/mark1.2 \
++ refs/tags/mark1.10 \
++ refs/tags/mark1.1 \
++ refs/tags/mark >expect &&
git ls-remote --sort="-refname" --tags self >actual &&
test_cmp expect actual
'
@@ t/t5512-ls-remote.sh: test_expect_success 'protocol v2 supports hiderefs' '
- $(git rev-parse refs/tags/mark1.2) refs/tags/mark1.2
- EOF
+ echo "ref: refs/heads/master HEAD" >expect &&
-+ generate_references HEAD \
++ generate_references \
++ HEAD \
+ refs/heads/master >>expect &&
+ oid=$(git rev-parse HEAD) &&
+ echo "$oid refs/remotes/origin/HEAD" >>expect &&
-+ generate_references refs/remotes/origin/master \
++ generate_references \
++ refs/remotes/origin/master \
+ refs/tags/mark \
+ refs/tags/mark1.1 \
+ refs/tags/mark1.10 \
3: b3addeb985 = 3: 986ba1dd39 t5512: stop losing return codes of git commands
4: 68c911e29b < -: ---------- t5550: remove use of `test_might_fail grep`
-: ---------- > 4: 53e64e7077 t5550: simplify no matching line check
5: 4253f51fea = 5: 4955b701e1 t5607: reorder `nongit test_must_fail`
6: 2bac5f4a29 = 6: a3d9d3673b t5612: don't use `test_must_fail test_cmp`
7: b490ccace0 = 7: bc0e90d5ba t5612: stop losing return codes of git commands
8: b51f97f6ae = 8: 6a9d3cef2a t5801: teach compare_refs() to accept !
--
2.26.0.159.g23e2136ad0
next prev parent reply other threads:[~2020-03-26 8:28 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-25 5:54 [PATCH 0/8] t: replace incorrect test_must_fail usage (part 3) Denton Liu
2020-03-25 5:54 ` [PATCH 1/8] t5512: don't use `test_must_fail test_cmp` Denton Liu
2020-03-25 5:54 ` [PATCH 2/8] t5512: generate references with generate_references() Denton Liu
2020-03-25 6:08 ` Eric Sunshine
2020-03-25 6:41 ` Junio C Hamano
2020-03-25 5:54 ` [PATCH 3/8] t5512: stop losing return codes of git commands Denton Liu
2020-03-25 5:54 ` [PATCH 4/8] t5550: remove use of `test_might_fail grep` Denton Liu
2020-03-25 6:35 ` Junio C Hamano
2020-03-25 5:54 ` [PATCH 5/8] t5607: reorder `nongit test_must_fail` Denton Liu
2020-03-25 5:54 ` [PATCH 6/8] t5612: don't use `test_must_fail test_cmp` Denton Liu
2020-03-25 5:54 ` [PATCH 7/8] t5612: stop losing return codes of git commands Denton Liu
2020-03-25 5:54 ` [PATCH 8/8] t5801: teach compare_refs() to accept ! Denton Liu
2020-03-25 6:31 ` Junio C Hamano
2020-03-25 6:36 ` Eric Sunshine
2020-03-25 6:43 ` [PATCH 0/8] t: replace incorrect test_must_fail usage (part 3) Junio C Hamano
2020-03-26 8:27 ` Denton Liu [this message]
2020-03-26 8:27 ` [PATCH v2 1/8] t5512: don't use `test_must_fail test_cmp` Denton Liu
2020-03-26 8:27 ` [PATCH v2 2/8] t5512: stop losing git exit code in here-docs Denton Liu
2020-03-26 15:24 ` Eric Sunshine
2020-03-26 8:27 ` [PATCH v2 3/8] t5512: stop losing return codes of git commands Denton Liu
2020-03-26 8:27 ` [PATCH v2 4/8] t5550: simplify no matching line check Denton Liu
2020-03-26 15:26 ` Eric Sunshine
2020-03-26 8:27 ` [PATCH v2 5/8] t5607: reorder `nongit test_must_fail` Denton Liu
2020-03-26 8:27 ` [PATCH v2 6/8] t5612: don't use `test_must_fail test_cmp` Denton Liu
2020-03-26 8:27 ` [PATCH v2 7/8] t5612: stop losing return codes of git commands Denton Liu
2020-03-26 8:27 ` [PATCH v2 8/8] t5801: teach compare_refs() to accept ! Denton Liu
2020-03-27 0:43 ` [PATCH v2 9/9] fixup! t5512: stop losing git exit code in here-docs Denton Liu
2020-03-27 17:46 ` Junio C Hamano
2020-03-27 20:29 ` Eric Sunshine
2020-03-27 21:39 ` 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=cover.1585209554.git.liu.denton@gmail.com \
--to=liu.denton@gmail.com \
--cc=git@vger.kernel.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.