Mercurial > hg
annotate tests/test-paths.t @ 25591:f1d46075b13a
verify: check the subrepository references in .hgsubstate
While hopefully atypical, there are reasons that a subrepository revision can be
lost that aren't covered by corruption of the .hgsubstate revlog. Such things
can happen when a subrepo is amended, stripped or simply isn't pulled from
upstream because the parent repo revision wasn't updated yet. There's no way to
know if it is an error, but this will find potential problems sooner than when
some random revision is updated.
Until recently, convert made no attempt at rewriting the .hgsubstate file. The
impetuous for this is to verify the conversion of some repositories, and this is
orders of magnitude faster than a bash script from 0..tip that does an
'hg update -C $rev'. But it is equally useful to determine if everything has
been pulled down before taking a thumb drive on the go.
It feels somewhat wrong to leave this out of verifymod (mostly because the file
is already read in there, and the final summary is printed before the subrepos
are checked). But verifymod looks very low level, so importing subrepo stuff
there seems more wrong.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 16 Jun 2015 16:15:15 -0400 |
parents | f2719b387380 |
children | 4dccc37b87bd 59d5f619e69e |
rev | line source |
---|---|
11785
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
1 $ hg init a |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
2 $ hg clone a b |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
3 updating to branch default |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
4 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
5 $ cd a |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
6 $ echo '[paths]' >> .hg/hgrc |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
7 $ echo 'dupe = ../b' >> .hg/hgrc |
12662
7285b2824fb7
ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
12640
diff
changeset
|
8 $ echo 'expand = $SOMETHING/bar' >> .hg/hgrc |
11785
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
9 $ hg in dupe |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
10 comparing with $TESTTMP/b (glob) |
11785
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
11 no changes found |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11785
diff
changeset
|
12 [1] |
11785
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
13 $ cd .. |
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
14 $ hg -R a in dupe |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
15 comparing with $TESTTMP/b (glob) |
11785
7d9be960cd9a
tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
5951
diff
changeset
|
16 no changes found |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11785
diff
changeset
|
17 [1] |
12662
7285b2824fb7
ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
12640
diff
changeset
|
18 $ cd a |
7285b2824fb7
ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
12640
diff
changeset
|
19 $ hg paths |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
20 dupe = $TESTTMP/b (glob) |
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
21 expand = $TESTTMP/a/$SOMETHING/bar (glob) |
12662
7285b2824fb7
ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
12640
diff
changeset
|
22 $ SOMETHING=foo hg paths |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
23 dupe = $TESTTMP/b (glob) |
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
24 expand = $TESTTMP/a/foo/bar (glob) |
16843
61f3ca8e4d39
test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com>
parents:
15567
diff
changeset
|
25 #if msys |
61f3ca8e4d39
test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com>
parents:
15567
diff
changeset
|
26 $ SOMETHING=//foo hg paths |
61f3ca8e4d39
test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com>
parents:
15567
diff
changeset
|
27 dupe = $TESTTMP/b (glob) |
61f3ca8e4d39
test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com>
parents:
15567
diff
changeset
|
28 expand = /foo/bar |
61f3ca8e4d39
test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com>
parents:
15567
diff
changeset
|
29 #else |
12662
7285b2824fb7
ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
12640
diff
changeset
|
30 $ SOMETHING=/foo hg paths |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
31 dupe = $TESTTMP/b (glob) |
12662
7285b2824fb7
ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
12640
diff
changeset
|
32 expand = /foo/bar |
16843
61f3ca8e4d39
test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com>
parents:
15567
diff
changeset
|
33 #endif |
14331
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
34 $ hg paths -q |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
35 dupe |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
36 expand |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
37 $ hg paths dupe |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
14331
diff
changeset
|
38 $TESTTMP/b (glob) |
14331
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
39 $ hg paths -q dupe |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
40 $ hg paths unknown |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
41 not found! |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
42 [1] |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
43 $ hg paths -q unknown |
3b9a896af09c
paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13797
diff
changeset
|
44 [1] |
13797
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
45 $ cd .. |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
46 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
47 'file:' disables [paths] entries for clone destination |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
48 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
49 $ cat >> $HGRCPATH <<EOF |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
50 > [paths] |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
51 > gpath1 = http://hg.example.com |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
52 > EOF |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
53 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
54 $ hg clone a gpath1 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
55 abort: cannot create new http repository |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
56 [255] |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
57 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
58 $ hg clone a file:gpath1 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
59 updating to branch default |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
60 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
61 $ cd gpath1 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
62 $ hg -q id |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
63 000000000000 |
16d5e80876de
test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents:
12662
diff
changeset
|
64 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16843
diff
changeset
|
65 $ cd .. |