Mercurial > hg
annotate tests/test-convert-authormap.t @ 44667:b561f3a68e41 stable
discovery: avoid wrongly saying there are nothing to pull
We can get in a situation where a revision passed through `hg pull --rev REV`
are available on the server, but not a descendant of the advertised server
heads.
For example the server could lying be during heads advertisement, to hide some
pull request. Or obsolete/hidden content could be explicitly pulled.
So in this case the lookup associated to `REV` returned successfully, but the
normal discovery will find all advertised heads already known locally. This flip
a special boolean `anyinc` that will prevent any fetch attempt, preventing `REV`
to be pulled over.
We add three line of code to detect this case and make sure a pull actually
happens.
My main target is to make some third party extensions happy (I expect the
associated test to move upstream with the extension). However this fix already
make some of the `infinitepush` test happier.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 06 Apr 2020 00:24:57 +0200 |
parents | 4441705b7111 |
children |
rev | line source |
---|---|
7961
52e442fe43f4
convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff
changeset
|
1 |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
2 $ cat >> $HGRCPATH <<EOF |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
3 > [extensions] |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
4 > convert= |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
5 > EOF |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
6 |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
7 Prepare orig repo |
7961
52e442fe43f4
convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff
changeset
|
8 |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
9 $ hg init orig |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
10 $ cd orig |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
11 $ echo foo > foo |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
12 $ HGUSER='user name' hg ci -qAm 'foo' |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
13 $ cd .. |
7961
52e442fe43f4
convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff
changeset
|
14 |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
15 Explicit --authors |
7962
62154415821f
convert: fix authormap handling of lines without '='
Marti Raudsepp <marti@juffo.org>
parents:
7961
diff
changeset
|
16 |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
17 $ cat > authormap.txt <<EOF |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
18 > user name = Long User Name |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
19 > |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
20 > # comment |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
21 > this line is ignored |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
22 > EOF |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
23 $ hg convert --authors authormap.txt orig new |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
24 initializing destination new repository |
16925
eaf6a6d7f015
convert: lowercase status and abort messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
25 ignoring bad line in author map file authormap.txt: this line is ignored |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
26 scanning source... |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
27 sorting... |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
28 converting... |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
29 0 foo |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
16948
diff
changeset
|
30 writing author map file $TESTTMP/new/.hg/authormap |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
31 $ cat new/.hg/authormap |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
32 user name=Long User Name |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
33 $ hg -Rnew log |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
34 changeset: 0:d89716e88087 |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
35 tag: tip |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
36 user: Long User Name |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
37 date: Thu Jan 01 00:00:00 1970 +0000 |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
38 summary: foo |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
39 |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
40 $ rm -rf new |
7961
52e442fe43f4
convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff
changeset
|
41 |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
42 Implicit .hg/authormap |
7961
52e442fe43f4
convert: Add testcase for convert authormap.
Marti Raudsepp <marti@juffo.org>
parents:
diff
changeset
|
43 |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
44 $ hg init new |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
45 $ mv authormap.txt new/.hg/authormap |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
46 $ hg convert orig new |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
16948
diff
changeset
|
47 ignoring bad line in author map file $TESTTMP/new/.hg/authormap: this line is ignored |
12511
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
48 scanning source... |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
49 sorting... |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
50 converting... |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
51 0 foo |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
52 $ hg -Rnew log |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
53 changeset: 0:d89716e88087 |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
54 tag: tip |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
55 user: Long User Name |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
56 date: Thu Jan 01 00:00:00 1970 +0000 |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
57 summary: foo |
0fefeb4fff49
tests: unify test-convert-authormap
Matt Mackall <mpm@selenic.com>
parents:
8167
diff
changeset
|
58 |