Skip to content

Commit 7a8e630

Browse files
committed
Merge branch 'dl/test-must-fail-fixes-3'
Test clean-up continues. * dl/test-must-fail-fixes-3: t5801: teach compare_refs() to accept ! t5612: stop losing return codes of git commands t5612: don't use `test_must_fail test_cmp` t5607: reorder `nongit test_must_fail` t5550: simplify no matching line check t5512: stop losing return codes of git commands t5512: stop losing git exit code in here-docs t5512: don't use `test_must_fail test_cmp`
2 parents 810dc64 + ec8f87b commit 7a8e630

File tree

5 files changed

+66
-56
lines changed

5 files changed

+66
-56
lines changed

t/t5512-ls-remote.sh

Lines changed: 43 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@ test_description='git ls-remote'
44

55
. ./test-lib.sh
66

7+
generate_references () {
8+
for ref
9+
do
10+
oid=$(git rev-parse "$ref") &&
11+
printf '%s\t%s\n' "$oid" "$ref" || return 1
12+
done
13+
}
14+
715
test_expect_success setup '
816
>file &&
917
git add file &&
@@ -13,11 +21,11 @@ test_expect_success setup '
1321
git tag mark1.1 &&
1422
git tag mark1.2 &&
1523
git tag mark1.10 &&
16-
git show-ref --tags -d | sed -e "s/ / /" >expected.tag &&
17-
(
18-
echo "$(git rev-parse HEAD) HEAD" &&
19-
git show-ref -d | sed -e "s/ / /"
20-
) >expected.all &&
24+
git show-ref --tags -d >expected.tag.raw &&
25+
sed -e "s/ / /" expected.tag.raw >expected.tag &&
26+
generate_references HEAD >expected.all &&
27+
git show-ref -d >refs &&
28+
sed -e "s/ / /" refs >>expected.all &&
2129
2230
git remote add self "$(pwd)/.git"
2331
'
@@ -43,34 +51,31 @@ test_expect_success 'ls-remote self' '
4351
'
4452

4553
test_expect_success 'ls-remote --sort="version:refname" --tags self' '
46-
cat >expect <<-EOF &&
47-
$(git rev-parse mark) refs/tags/mark
48-
$(git rev-parse mark1.1) refs/tags/mark1.1
49-
$(git rev-parse mark1.2) refs/tags/mark1.2
50-
$(git rev-parse mark1.10) refs/tags/mark1.10
51-
EOF
54+
generate_references \
55+
refs/tags/mark \
56+
refs/tags/mark1.1 \
57+
refs/tags/mark1.2 \
58+
refs/tags/mark1.10 >expect &&
5259
git ls-remote --sort="version:refname" --tags self >actual &&
5360
test_cmp expect actual
5461
'
5562

5663
test_expect_success 'ls-remote --sort="-version:refname" --tags self' '
57-
cat >expect <<-EOF &&
58-
$(git rev-parse mark1.10) refs/tags/mark1.10
59-
$(git rev-parse mark1.2) refs/tags/mark1.2
60-
$(git rev-parse mark1.1) refs/tags/mark1.1
61-
$(git rev-parse mark) refs/tags/mark
62-
EOF
64+
generate_references \
65+
refs/tags/mark1.10 \
66+
refs/tags/mark1.2 \
67+
refs/tags/mark1.1 \
68+
refs/tags/mark >expect &&
6369
git ls-remote --sort="-version:refname" --tags self >actual &&
6470
test_cmp expect actual
6571
'
6672

6773
test_expect_success 'ls-remote --sort="-refname" --tags self' '
68-
cat >expect <<-EOF &&
69-
$(git rev-parse mark1.2) refs/tags/mark1.2
70-
$(git rev-parse mark1.10) refs/tags/mark1.10
71-
$(git rev-parse mark1.1) refs/tags/mark1.1
72-
$(git rev-parse mark) refs/tags/mark
73-
EOF
74+
generate_references \
75+
refs/tags/mark1.2 \
76+
refs/tags/mark1.10 \
77+
refs/tags/mark1.1 \
78+
refs/tags/mark >expect &&
7479
git ls-remote --sort="-refname" --tags self >actual &&
7580
test_cmp expect actual
7681
'
@@ -92,7 +97,7 @@ test_expect_success 'use "origin" when no remote specified' '
9297

9398
test_expect_success 'suppress "From <url>" with -q' '
9499
git ls-remote -q 2>actual_err &&
95-
test_must_fail test_cmp exp_err actual_err
100+
! test_cmp exp_err actual_err
96101
'
97102

98103
test_expect_success 'use branch.<name>.remote if possible' '
@@ -180,8 +185,8 @@ do
180185
test_config $configsection.hiderefs refs/tags &&
181186
git ls-remote . >actual &&
182187
test_unconfig $configsection.hiderefs &&
183-
git ls-remote . |
184-
sed -e "/ refs\/tags\//d" >expect &&
188+
git ls-remote . >expect.raw &&
189+
sed -e "/ refs\/tags\//d" expect.raw >expect &&
185190
test_cmp expect actual
186191
'
187192

@@ -212,17 +217,18 @@ test_expect_success 'protocol v2 supports hiderefs' '
212217

213218
test_expect_success 'ls-remote --symref' '
214219
git fetch origin &&
215-
cat >expect <<-EOF &&
216-
ref: refs/heads/master HEAD
217-
$(git rev-parse HEAD) HEAD
218-
$(git rev-parse refs/heads/master) refs/heads/master
219-
$(git rev-parse HEAD) refs/remotes/origin/HEAD
220-
$(git rev-parse refs/remotes/origin/master) refs/remotes/origin/master
221-
$(git rev-parse refs/tags/mark) refs/tags/mark
222-
$(git rev-parse refs/tags/mark1.1) refs/tags/mark1.1
223-
$(git rev-parse refs/tags/mark1.10) refs/tags/mark1.10
224-
$(git rev-parse refs/tags/mark1.2) refs/tags/mark1.2
225-
EOF
220+
echo "ref: refs/heads/master HEAD" >expect &&
221+
generate_references \
222+
HEAD \
223+
refs/heads/master >>expect &&
224+
oid=$(git rev-parse HEAD) &&
225+
echo "$oid refs/remotes/origin/HEAD" >>expect &&
226+
generate_references \
227+
refs/remotes/origin/master \
228+
refs/tags/mark \
229+
refs/tags/mark1.1 \
230+
refs/tags/mark1.10 \
231+
refs/tags/mark1.2 >>expect &&
226232
# Protocol v2 supports sending symrefs for refs other than HEAD, so use
227233
# protocol v0 here.
228234
GIT_TEST_PROTOCOL_VERSION=0 git ls-remote --symref >actual &&

t/t5550-http-fetch-dumb.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -248,9 +248,7 @@ test_expect_success 'fetch can handle previously-fetched .idx files' '
248248
'
249249

250250
test_expect_success 'did not use upload-pack service' '
251-
test_might_fail grep '/git-upload-pack' <"$HTTPD_ROOT_PATH"/access.log >act &&
252-
: >exp &&
253-
test_cmp exp act
251+
! grep "/git-upload-pack" "$HTTPD_ROOT_PATH/access.log"
254252
'
255253

256254
test_expect_success 'git client shows text/plain errors' '

t/t5607-clone-bundle.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ test_expect_success 'setup' '
1616

1717
test_expect_success '"verify" needs a worktree' '
1818
git bundle create tip.bundle -1 master &&
19-
test_must_fail nongit git bundle verify ../tip.bundle 2>err &&
19+
nongit test_must_fail git bundle verify ../tip.bundle 2>err &&
2020
test_i18ngrep "need a repository" err
2121
'
2222

t/t5612-clone-refspec.sh

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,9 @@ test_expect_success 'by default all branches will be kept updated' '
7171
(
7272
cd dir_all &&
7373
git fetch &&
74-
git for-each-ref refs/remotes/origin |
74+
git for-each-ref refs/remotes/origin >refs &&
7575
sed -e "/HEAD$/d" \
76-
-e "s|/remotes/origin/|/heads/|" >../actual
76+
-e "s|/remotes/origin/|/heads/|" refs >../actual
7777
) &&
7878
# follow both master and side
7979
git for-each-ref refs/heads >expect &&
@@ -87,7 +87,7 @@ test_expect_success 'by default no tags will be kept updated' '
8787
git for-each-ref refs/tags >../actual
8888
) &&
8989
git for-each-ref refs/tags >expect &&
90-
test_must_fail test_cmp expect actual &&
90+
! test_cmp expect actual &&
9191
test_line_count = 2 actual
9292
'
9393

@@ -104,9 +104,9 @@ test_expect_success '--single-branch while HEAD pointing at master' '
104104
(
105105
cd dir_master &&
106106
git fetch --force &&
107-
git for-each-ref refs/remotes/origin |
107+
git for-each-ref refs/remotes/origin >refs &&
108108
sed -e "/HEAD$/d" \
109-
-e "s|/remotes/origin/|/heads/|" >../actual
109+
-e "s|/remotes/origin/|/heads/|" refs >../actual
110110
) &&
111111
# only follow master
112112
git for-each-ref refs/heads/master >expect &&
@@ -126,9 +126,9 @@ test_expect_success '--single-branch while HEAD pointing at master and --no-tags
126126
(
127127
cd dir_master_no_tags &&
128128
git fetch &&
129-
git for-each-ref refs/remotes/origin |
129+
git for-each-ref refs/remotes/origin >refs &&
130130
sed -e "/HEAD$/d" \
131-
-e "s|/remotes/origin/|/heads/|" >../actual
131+
-e "s|/remotes/origin/|/heads/|" refs >../actual
132132
) &&
133133
# only follow master
134134
git for-each-ref refs/heads/master >expect &&
@@ -156,9 +156,9 @@ test_expect_success '--single-branch while HEAD pointing at side' '
156156
(
157157
cd dir_side &&
158158
git fetch &&
159-
git for-each-ref refs/remotes/origin |
159+
git for-each-ref refs/remotes/origin >refs &&
160160
sed -e "/HEAD$/d" \
161-
-e "s|/remotes/origin/|/heads/|" >../actual
161+
-e "s|/remotes/origin/|/heads/|" refs >../actual
162162
) &&
163163
# only follow side
164164
git for-each-ref refs/heads/side >expect &&
@@ -169,9 +169,9 @@ test_expect_success '--single-branch with explicit --branch side' '
169169
(
170170
cd dir_side2 &&
171171
git fetch &&
172-
git for-each-ref refs/remotes/origin |
172+
git for-each-ref refs/remotes/origin >refs &&
173173
sed -e "/HEAD$/d" \
174-
-e "s|/remotes/origin/|/heads/|" >../actual
174+
-e "s|/remotes/origin/|/heads/|" refs >../actual
175175
) &&
176176
# only follow side
177177
git for-each-ref refs/heads/side >expect &&
@@ -223,9 +223,9 @@ test_expect_success '--single-branch with detached' '
223223
(
224224
cd dir_detached &&
225225
git fetch &&
226-
git for-each-ref refs/remotes/origin |
226+
git for-each-ref refs/remotes/origin >refs &&
227227
sed -e "/HEAD$/d" \
228-
-e "s|/remotes/origin/|/heads/|" >../actual
228+
-e "s|/remotes/origin/|/heads/|" refs >../actual
229229
) &&
230230
# nothing
231231
test_must_be_empty actual

t/t5801-remote-helpers.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,15 @@ test_description='Test remote-helper import and export commands'
1111
PATH="$TEST_DIRECTORY/t5801:$PATH"
1212

1313
compare_refs() {
14+
fail= &&
15+
if test "x$1" = 'x!'
16+
then
17+
fail='!' &&
18+
shift
19+
fi &&
1420
git --git-dir="$1/.git" rev-parse --verify $2 >expect &&
1521
git --git-dir="$3/.git" rev-parse --verify $4 >actual &&
16-
test_cmp expect actual
22+
eval $fail test_cmp expect actual
1723
}
1824

1925
test_expect_success 'setup repository' '
@@ -189,7 +195,7 @@ test_expect_success GPG 'push signed tag' '
189195
git push origin signed-tag
190196
) &&
191197
compare_refs local signed-tag^{} server signed-tag^{} &&
192-
test_must_fail compare_refs local signed-tag server signed-tag
198+
compare_refs ! local signed-tag server signed-tag
193199
'
194200

195201
test_expect_success GPG 'push signed tag with signed-tags capability' '

0 commit comments

Comments
 (0)