Mercurial > hg
annotate tests/test-no-symlinks.t @ 41051:bad05a6afdc8
pull: fix inconsistent view of bookmarks during pull (issue4700)
I had a share where a pull apparently pulled a bookmark but not the
revision pointed to by the bookmark, which I suspect is due to this
(and if not, we might as well remove known issues in this area).
I do this by combining doing all the queries that could read the
bookmarks in one round trip.
I had to change the handling of the case where the server doesn't
support the lookup query, because if it fails, it would otherwise make
fremotebookmark.result() block forever. This is due to
wireprotov1peer.peerexecutor.sendcommands's behavior (it fills a
single future if any query fails synchronously and leaves all other
futures unchanged), but I don't know if the fix is to cancel all other
futures, or to keep going with the other queries.
Differential Revision: https://phab.mercurial-scm.org/D5449
author | Valentin Gatien-Baron <valentin.gatienbaron@gmail.com> |
---|---|
date | Thu, 20 Dec 2018 22:28:39 -0500 |
parents | 0612e4c6fda0 |
children |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
14116
diff
changeset
|
1 #require no-symlink |
5085
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
2 |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
3 # The following script was used to create the bundle: |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
4 # |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
5 # hg init symlinks |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
6 # cd symlinks |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
7 # echo a > a |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
8 # mkdir d |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
9 # echo b > d/b |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
10 # ln -s a a.lnk |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
11 # ln -s d/b d/b.lnk |
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
12 # hg ci -Am t |
5089
9b5ae133bd5a
test-no-symlinks: rename .bundle into .hg for consistency.
Patrick Mezard <pmezard@gmail.com>
parents:
5085
diff
changeset
|
13 # hg bundle --base null ../test-no-symlinks.hg |
5085
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
14 |
12917
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
15 Extract a symlink on a platform not supporting them |
5085
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
16 |
12917
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
17 $ hg init t |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
18 $ cd t |
14116
cd3032437064
tests: move test bundles in a bundles/ subdirectory
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
12917
diff
changeset
|
19 $ hg pull -q "$TESTDIR/bundles/test-no-symlinks.hg" |
12917
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
20 $ hg update |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
21 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
22 $ cat a.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
23 a |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
24 $ cat d/b.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
25 d/b |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
26 |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
27 Copy a symlink and move another |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
28 |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
29 $ hg copy a.lnk d/a2.lnk |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
30 $ hg mv d/b.lnk b2.lnk |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
31 $ hg ci -Am copy |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
32 $ cat d/a2.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
33 a |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
34 $ cat b2.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
35 d/b |
5085
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
36 |
12917
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
37 Bundle and extract again |
5085
dcfd75502b82
Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
38 |
12917
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
39 $ hg bundle --base null ../symlinks.hg |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
40 2 changesets found |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
41 $ cd .. |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
42 $ hg init t2 |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
43 $ cd t2 |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
44 $ hg pull ../symlinks.hg |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
45 pulling from ../symlinks.hg |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
46 requesting all changes |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
47 adding changesets |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
48 adding manifests |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
49 adding file changes |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
50 added 2 changesets with 6 changes to 6 files |
39520
0612e4c6fda0
tests: stabilize test-no-symlink
Matt Harbison <matt_harbison@yahoo.com>
parents:
34814
diff
changeset
|
51 new changesets d326ae2d01ee:71d85cf3ba90 (2 drafts) |
12917
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
52 (run 'hg update' to get a working copy) |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
53 $ hg update |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
54 5 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
55 $ cat a.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
56 a |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
57 $ cat d/a2.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
58 a |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
59 $ cat b2.lnk && echo |
a419cb2395d5
tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents:
5091
diff
changeset
|
60 d/b |