test-debugcommands.t
717 lines
| 21.3 KiB
| text/troff
|
Tads3Lexer
/ tests / test-debugcommands.t
Pierre-Yves David
|
r26918 | $ cat << EOF >> $HGRCPATH | ||
Paul Morelle
|
r35396 | > [ui] | ||
> interactive=yes | ||||
Pierre-Yves David
|
r26918 | > EOF | ||
Patrick Mezard
|
r17188 | $ hg init debugrevlog | ||
$ cd debugrevlog | ||||
$ echo a > a | ||||
$ hg ci -Am adda | ||||
adding a | ||||
Boris Feld
|
r38669 | $ hg rm . | ||
removing a | ||||
$ hg ci -Am make-it-empty | ||||
$ hg revert --all -r 0 | ||||
adding a | ||||
$ hg ci -Am make-it-full | ||||
Gregory Szorc
|
r37434 | #if reporevlogstore | ||
Boris Feld
|
r39184 | $ hg debugrevlog -c | ||
format : 1 | ||||
flags : inline | ||||
revisions : 3 | ||||
merges : 0 ( 0.00%) | ||||
normal : 3 (100.00%) | ||||
revisions : 3 | ||||
empty : 0 ( 0.00%) | ||||
text : 0 (100.00%) | ||||
delta : 0 (100.00%) | ||||
Boris Feld
|
r39189 | snapshot : 3 (100.00%) | ||
lvl-0 : 3 (100.00%) | ||||
Boris Feld
|
r39184 | deltas : 0 ( 0.00%) | ||
revision size : 191 | ||||
Boris Feld
|
r39189 | snapshot : 191 (100.00%) | ||
lvl-0 : 191 (100.00%) | ||||
Boris Feld
|
r39184 | deltas : 0 ( 0.00%) | ||
chunks : 3 | ||||
0x75 (u) : 3 (100.00%) | ||||
chunks size : 191 | ||||
0x75 (u) : 191 (100.00%) | ||||
avg chain length : 0 | ||||
max chain length : 0 | ||||
max chain reach : 67 | ||||
compression ratio : 0 | ||||
uncompressed data size (min/max/avg) : 57 / 66 / 62 | ||||
full revision size (min/max/avg) : 58 / 67 / 63 | ||||
Boris Feld
|
r39189 | inter-snapshot size (min/max/avg) : 0 / 0 / 0 | ||
Boris Feld
|
r39184 | delta size (min/max/avg) : 0 / 0 / 0 | ||
Patrick Mezard
|
r17188 | $ hg debugrevlog -m | ||
format : 1 | ||||
Pierre-Yves David
|
r26918 | flags : inline, generaldelta | ||
Patrick Mezard
|
r17188 | |||
Boris Feld
|
r38669 | revisions : 3 | ||
Patrick Mezard
|
r17188 | merges : 0 ( 0.00%) | ||
Boris Feld
|
r38669 | normal : 3 (100.00%) | ||
revisions : 3 | ||||
Boris Feld
|
r39116 | empty : 1 (33.33%) | ||
Boris Feld
|
r39117 | text : 1 (100.00%) | ||
delta : 0 ( 0.00%) | ||||
Boris Feld
|
r39189 | snapshot : 2 (66.67%) | ||
lvl-0 : 2 (66.67%) | ||||
Patrick Mezard
|
r17188 | deltas : 0 ( 0.00%) | ||
Boris Feld
|
r38669 | revision size : 88 | ||
Boris Feld
|
r39189 | snapshot : 88 (100.00%) | ||
lvl-0 : 88 (100.00%) | ||||
Patrick Mezard
|
r17188 | deltas : 0 ( 0.00%) | ||
Boris Feld
|
r38669 | chunks : 3 | ||
empty : 1 (33.33%) | ||||
0x75 (u) : 2 (66.67%) | ||||
chunks size : 88 | ||||
empty : 0 ( 0.00%) | ||||
0x75 (u) : 88 (100.00%) | ||||
Gregory Szorc
|
r30452 | |||
Yuya Nishihara
|
r33062 | avg chain length : 0 | ||
max chain length : 0 | ||||
max chain reach : 44 | ||||
compression ratio : 0 | ||||
Patrick Mezard
|
r17188 | |||
Boris Feld
|
r38669 | uncompressed data size (min/max/avg) : 0 / 43 / 28 | ||
Boris Feld
|
r39116 | full revision size (min/max/avg) : 44 / 44 / 44 | ||
Boris Feld
|
r39189 | inter-snapshot size (min/max/avg) : 0 / 0 / 0 | ||
Patrick Mezard
|
r17188 | delta size (min/max/avg) : 0 / 0 / 0 | ||
Boris Feld
|
r39184 | $ hg debugrevlog a | ||
format : 1 | ||||
flags : inline, generaldelta | ||||
revisions : 1 | ||||
merges : 0 ( 0.00%) | ||||
normal : 1 (100.00%) | ||||
revisions : 1 | ||||
empty : 0 ( 0.00%) | ||||
text : 0 (100.00%) | ||||
delta : 0 (100.00%) | ||||
Boris Feld
|
r39189 | snapshot : 1 (100.00%) | ||
lvl-0 : 1 (100.00%) | ||||
Boris Feld
|
r39184 | deltas : 0 ( 0.00%) | ||
revision size : 3 | ||||
Boris Feld
|
r39189 | snapshot : 3 (100.00%) | ||
lvl-0 : 3 (100.00%) | ||||
Boris Feld
|
r39184 | deltas : 0 ( 0.00%) | ||
chunks : 1 | ||||
0x75 (u) : 1 (100.00%) | ||||
chunks size : 3 | ||||
0x75 (u) : 3 (100.00%) | ||||
avg chain length : 0 | ||||
max chain length : 0 | ||||
max chain reach : 3 | ||||
compression ratio : 0 | ||||
uncompressed data size (min/max/avg) : 2 / 2 / 2 | ||||
full revision size (min/max/avg) : 3 / 3 / 3 | ||||
Boris Feld
|
r39189 | inter-snapshot size (min/max/avg) : 0 / 0 / 0 | ||
Boris Feld
|
r39184 | delta size (min/max/avg) : 0 / 0 / 0 | ||
Gregory Szorc
|
r37434 | #endif | ||
Mads Kiilerich
|
r20244 | |||
Gregory Szorc
|
r37301 | Test debugindex, with and without the --verbose/--debug flag | ||
Gregory Szorc
|
r39318 | $ hg debugrevlogindex a | ||
Gregory Szorc
|
r37301 | rev linkrev nodeid p1 p2 | ||
0 0 b789fdd96dc2 000000000000 000000000000 | ||||
Gregory Szorc
|
r37434 | #if no-reposimplestore | ||
Gregory Szorc
|
r39318 | $ hg --verbose debugrevlogindex a | ||
Gregory Szorc
|
r37300 | rev offset length linkrev nodeid p1 p2 | ||
0 0 3 0 b789fdd96dc2 000000000000 000000000000 | ||||
Gregory Szorc
|
r37301 | |||
Gregory Szorc
|
r39318 | $ hg --debug debugrevlogindex a | ||
Gregory Szorc
|
r37300 | rev offset length linkrev nodeid p1 p2 | ||
0 0 3 0 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 | ||||
Gregory Szorc
|
r37434 | #endif | ||
Gregory Szorc
|
r37301 | |||
Gregory Szorc
|
r39318 | $ hg debugrevlogindex -f 1 a | ||
Gregory Szorc
|
r37301 | rev flag size link p1 p2 nodeid | ||
0 0000 2 0 -1 -1 b789fdd96dc2 | ||||
Gregory Szorc
|
r37434 | #if no-reposimplestore | ||
Gregory Szorc
|
r39318 | $ hg --verbose debugrevlogindex -f 1 a | ||
Gregory Szorc
|
r37300 | rev flag offset length size link p1 p2 nodeid | ||
0 0000 0 3 2 0 -1 -1 b789fdd96dc2 | ||||
Gregory Szorc
|
r37301 | |||
Gregory Szorc
|
r39318 | $ hg --debug debugrevlogindex -f 1 a | ||
Gregory Szorc
|
r37300 | rev flag offset length size link p1 p2 nodeid | ||
0 0000 0 3 2 0 -1 -1 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 | ||||
Gregory Szorc
|
r37434 | #endif | ||
Kyle Lippincott
|
r23547 | |||
Gregory Szorc
|
r39318 | $ hg debugindex -c | ||
r50147 | rev linkrev nodeid p1-nodeid p2-nodeid | |||
Gregory Szorc
|
r39318 | 0 0 07f494440405 000000000000 000000000000 | ||
1 1 8cccb4b5fec2 07f494440405 000000000000 | ||||
2 2 b1e228c512c5 8cccb4b5fec2 000000000000 | ||||
$ hg debugindex -c --debug | ||||
r50161 | rev rank linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid full-size delta-base flags comp-mode data-offset chunk-size sd-comp-mode sidedata-offset sd-chunk-size | |||
0 -1 0 07f4944404050f47db2e5c5071e0e84e7a27bba9 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 57 0 0 2 0 58 inline 0 0 | ||||
1 -1 1 8cccb4b5fec20cafeb99dd01c26d4dee8ea4388a 0 07f4944404050f47db2e5c5071e0e84e7a27bba9 -1 0000000000000000000000000000000000000000 66 1 0 2 58 67 inline 0 0 | ||||
2 -1 2 b1e228c512c5d7066d70562ed839c3323a62d6d2 1 8cccb4b5fec20cafeb99dd01c26d4dee8ea4388a -1 0000000000000000000000000000000000000000 65 2 0 2 125 66 inline 0 0 | ||||
Gregory Szorc
|
r39318 | $ hg debugindex -m | ||
r50147 | rev linkrev nodeid p1-nodeid p2-nodeid | |||
Gregory Szorc
|
r39318 | 0 0 a0c8bcbbb45c 000000000000 000000000000 | ||
1 1 57faf8a737ae a0c8bcbbb45c 000000000000 | ||||
2 2 a35b10320954 57faf8a737ae 000000000000 | ||||
$ hg debugindex -m --debug | ||||
r50161 | rev rank linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid full-size delta-base flags comp-mode data-offset chunk-size sd-comp-mode sidedata-offset sd-chunk-size | |||
0 -1 0 a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 43 0 0 2 0 44 inline 0 0 | ||||
1 -1 1 57faf8a737ae7faf490582941a82319ba6529dca 0 a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 -1 0000000000000000000000000000000000000000 0 1 0 2 44 0 inline 0 0 | ||||
2 -1 2 a35b103209548032201c16c7688cb2657f037a38 1 57faf8a737ae7faf490582941a82319ba6529dca -1 0000000000000000000000000000000000000000 43 2 0 2 44 44 inline 0 0 | ||||
Gregory Szorc
|
r39318 | $ hg debugindex a | ||
r50147 | rev linkrev nodeid p1-nodeid p2-nodeid | |||
Gregory Szorc
|
r39318 | 0 0 b789fdd96dc2 000000000000 000000000000 | ||
$ hg debugindex --debug a | ||||
r50161 | rev rank linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid full-size delta-base flags comp-mode data-offset chunk-size sd-comp-mode sidedata-offset sd-chunk-size | |||
0 -1 0 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 2 0 0 2 0 3 inline 0 0 | ||||
Gregory Szorc
|
r39318 | |||
Gregory Szorc
|
r27263 | debugdelta chain basic output | ||
Martin von Zweigbergk
|
r40401 | #if reporevlogstore pure | ||
$ hg debugindexstats | ||||
abort: debugindexstats only works with native code | ||||
[255] | ||||
#endif | ||||
#if reporevlogstore no-pure | ||||
Martin von Zweigbergk
|
r40016 | $ hg debugindexstats | ||
node trie capacity: 4 | ||||
node trie count: 2 | ||||
node trie depth: 1 | ||||
r47646 | node trie last rev scanned: -1 (no-rust !) | |||
node trie last rev scanned: 3 (rust !) | ||||
node trie lookups: 4 (no-rust !) | ||||
node trie lookups: 2 (rust !) | ||||
Martin von Zweigbergk
|
r40016 | node trie misses: 1 | ||
node trie splits: 1 | ||||
revs in memory: 3 | ||||
Martin von Zweigbergk
|
r40401 | #endif | ||
Martin von Zweigbergk
|
r40016 | |||
Martin von Zweigbergk
|
r40401 | #if reporevlogstore no-pure | ||
Gregory Szorc
|
r27263 | $ hg debugdeltachain -m | ||
r50116 | rev p1 p2 chain# chainlen prev delta size rawsize chainsize ratio lindist extradist extraratio readsize largestblk rddensity srchunks | |||
0 -1 -1 1 1 -1 base 44 43 44 1.02326 44 0 0.00000 44 44 1.00000 1 | ||||
1 0 -1 2 1 -1 base 0 0 0 0.00000 0 0 0.00000 0 0 1.00000 1 | ||||
2 1 -1 3 1 -1 base 44 43 44 1.02326 44 0 0.00000 44 44 1.00000 1 | ||||
Gregory Szorc
|
r27263 | |||
$ hg debugdeltachain -m -T '{rev} {chainid} {chainlen}\n' | ||||
0 1 1 | ||||
Boris Feld
|
r38669 | 1 2 1 | ||
2 3 1 | ||||
Gregory Szorc
|
r27263 | |||
$ hg debugdeltachain -m -Tjson | ||||
[ | ||||
{ | ||||
"chainid": 1, | ||||
"chainlen": 1, | ||||
Martijn Pieters
|
r40299 | "chainratio": 1.0232558139534884, (py3 !) | ||
Gregory Szorc
|
r27263 | "chainsize": 44, | ||
"compsize": 44, | ||||
"deltatype": "base", | ||||
"extradist": 0, | ||||
"extraratio": 0.0, | ||||
Boris Feld
|
r40927 | "largestblock": 44, | ||
Gregory Szorc
|
r27263 | "lindist": 44, | ||
r50116 | "p1": -1, | |||
"p2": -1, | ||||
Gregory Szorc
|
r27263 | "prevrev": -1, | ||
Boris Feld
|
r40927 | "readdensity": 1.0, | ||
"readsize": 44, | ||||
Gregory Szorc
|
r27263 | "rev": 0, | ||
Boris Feld
|
r40927 | "srchunks": 1, | ||
Gregory Szorc
|
r27263 | "uncompsize": 43 | ||
Boris Feld
|
r38669 | }, | ||
{ | ||||
"chainid": 2, | ||||
"chainlen": 1, | ||||
"chainratio": 0, | ||||
"chainsize": 0, | ||||
"compsize": 0, | ||||
"deltatype": "base", | ||||
"extradist": 0, | ||||
"extraratio": 0, | ||||
Boris Feld
|
r40927 | "largestblock": 0, | ||
Boris Feld
|
r38669 | "lindist": 0, | ||
r50116 | "p1": 0, | |||
"p2": -1, | ||||
Boris Feld
|
r38669 | "prevrev": -1, | ||
Boris Feld
|
r40927 | "readdensity": 1, | ||
"readsize": 0, | ||||
Boris Feld
|
r38669 | "rev": 1, | ||
Boris Feld
|
r40927 | "srchunks": 1, | ||
Boris Feld
|
r38669 | "uncompsize": 0 | ||
}, | ||||
{ | ||||
"chainid": 3, | ||||
"chainlen": 1, | ||||
Martijn Pieters
|
r40299 | "chainratio": 1.0232558139534884, (py3 !) | ||
Boris Feld
|
r38669 | "chainsize": 44, | ||
"compsize": 44, | ||||
"deltatype": "base", | ||||
"extradist": 0, | ||||
"extraratio": 0.0, | ||||
Boris Feld
|
r40927 | "largestblock": 44, | ||
Boris Feld
|
r38669 | "lindist": 44, | ||
r50116 | "p1": 1, | |||
"p2": -1, | ||||
Boris Feld
|
r38669 | "prevrev": -1, | ||
Boris Feld
|
r40927 | "readdensity": 1.0, | ||
"readsize": 44, | ||||
Boris Feld
|
r38669 | "rev": 2, | ||
Boris Feld
|
r40927 | "srchunks": 1, | ||
Boris Feld
|
r38669 | "uncompsize": 43 | ||
Gregory Szorc
|
r27263 | } | ||
] | ||||
Kyle Lippincott
|
r23547 | |||
Paul Morelle
|
r35050 | debugdelta chain with sparse read enabled | ||
$ cat >> $HGRCPATH <<EOF | ||||
> [experimental] | ||||
> sparse-read = True | ||||
> EOF | ||||
$ hg debugdeltachain -m | ||||
r50116 | rev p1 p2 chain# chainlen prev delta size rawsize chainsize ratio lindist extradist extraratio readsize largestblk rddensity srchunks | |||
0 -1 -1 1 1 -1 base 44 43 44 1.02326 44 0 0.00000 44 44 1.00000 1 | ||||
1 0 -1 2 1 -1 base 0 0 0 0.00000 0 0 0.00000 0 0 1.00000 1 | ||||
2 1 -1 3 1 -1 base 44 43 44 1.02326 44 0 0.00000 44 44 1.00000 1 | ||||
Paul Morelle
|
r35050 | |||
$ hg debugdeltachain -m -T '{rev} {chainid} {chainlen} {readsize} {largestblock} {readdensity}\n' | ||||
0 1 1 44 44 1.0 | ||||
Boris Feld
|
r38669 | 1 2 1 0 0 1 | ||
2 3 1 44 44 1.0 | ||||
Paul Morelle
|
r35050 | |||
$ hg debugdeltachain -m -Tjson | ||||
[ | ||||
{ | ||||
"chainid": 1, | ||||
"chainlen": 1, | ||||
Martijn Pieters
|
r40299 | "chainratio": 1.0232558139534884, (py3 !) | ||
Paul Morelle
|
r35050 | "chainsize": 44, | ||
"compsize": 44, | ||||
"deltatype": "base", | ||||
"extradist": 0, | ||||
"extraratio": 0.0, | ||||
"largestblock": 44, | ||||
"lindist": 44, | ||||
r50116 | "p1": -1, | |||
"p2": -1, | ||||
Paul Morelle
|
r35050 | "prevrev": -1, | ||
"readdensity": 1.0, | ||||
"readsize": 44, | ||||
"rev": 0, | ||||
Paul Morelle
|
r35696 | "srchunks": 1, | ||
Paul Morelle
|
r35050 | "uncompsize": 43 | ||
Boris Feld
|
r38669 | }, | ||
{ | ||||
"chainid": 2, | ||||
"chainlen": 1, | ||||
"chainratio": 0, | ||||
"chainsize": 0, | ||||
"compsize": 0, | ||||
"deltatype": "base", | ||||
"extradist": 0, | ||||
"extraratio": 0, | ||||
"largestblock": 0, | ||||
"lindist": 0, | ||||
r50116 | "p1": 0, | |||
"p2": -1, | ||||
Boris Feld
|
r38669 | "prevrev": -1, | ||
"readdensity": 1, | ||||
"readsize": 0, | ||||
"rev": 1, | ||||
"srchunks": 1, | ||||
"uncompsize": 0 | ||||
}, | ||||
{ | ||||
"chainid": 3, | ||||
"chainlen": 1, | ||||
Martijn Pieters
|
r40299 | "chainratio": 1.0232558139534884, (py3 !) | ||
Boris Feld
|
r38669 | "chainsize": 44, | ||
"compsize": 44, | ||||
"deltatype": "base", | ||||
"extradist": 0, | ||||
"extraratio": 0.0, | ||||
"largestblock": 44, | ||||
"lindist": 44, | ||||
r50116 | "p1": 1, | |||
"p2": -1, | ||||
Boris Feld
|
r38669 | "prevrev": -1, | ||
"readdensity": 1.0, | ||||
"readsize": 44, | ||||
"rev": 2, | ||||
"srchunks": 1, | ||||
"uncompsize": 43 | ||||
Paul Morelle
|
r35050 | } | ||
] | ||||
Paul Morelle
|
r35696 | $ printf "This test checks things.\n" >> a | ||
$ hg ci -m a | ||||
$ hg branch other | ||||
marked working directory as branch other | ||||
(branches are permanent and global, did you want a bookmark?) | ||||
$ for i in `$TESTDIR/seq.py 5`; do | ||||
> printf "shorter ${i}" >> a | ||||
> hg ci -m "a other:$i" | ||||
> hg up -q default | ||||
> printf "for the branch default we want longer chains: ${i}" >> a | ||||
> hg ci -m "a default:$i" | ||||
> hg up -q other | ||||
> done | ||||
$ hg debugdeltachain a -T '{rev} {srchunks}\n' \ | ||||
> --config experimental.sparse-read.density-threshold=0.50 \ | ||||
> --config experimental.sparse-read.min-gap-size=0 | ||||
0 1 | ||||
1 1 | ||||
2 1 | ||||
3 1 | ||||
4 1 | ||||
5 1 | ||||
6 1 | ||||
7 1 | ||||
8 1 | ||||
9 1 | ||||
r47636 | 10 2 (no-zstd !) | |||
10 1 (zstd !) | ||||
Paul Morelle
|
r35696 | 11 1 | ||
$ hg --config extensions.strip= strip --no-backup -r 1 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
Mateusz Kwapich
|
r23255 | Test max chain len | ||
$ cat >> $HGRCPATH << EOF | ||||
Augie Fackler
|
r23256 | > [format] | ||
Mateusz Kwapich
|
r23255 | > maxchainlen=4 | ||
> EOF | ||||
Augie Fackler
|
r23256 | $ printf "This test checks if maxchainlen config value is respected also it can serve as basic test for debugrevlog -d <file>.\n" >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf "b\n" >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf "c\n" >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf "d\n" >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf "e\n" >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf "f\n" >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf 'g\n' >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Augie Fackler
|
r23256 | $ printf 'h\n' >> a | ||
Mateusz Kwapich
|
r23255 | $ hg ci -m a | ||
Gregory Szorc
|
r37434 | |||
Mateusz Kwapich
|
r23255 | $ hg debugrevlog -d a | ||
# rev p1rev p2rev start end deltastart base p1 p2 rawsize totalsize compression heads chainlen | ||||
0 -1 -1 0 ??? 0 0 0 0 ??? ???? ? 1 0 (glob) | ||||
1 0 -1 ??? ??? 0 0 0 0 ??? ???? ? 1 1 (glob) | ||||
2 1 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 2 (glob) | ||||
3 2 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 3 (glob) | ||||
4 3 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 4 (glob) | ||||
5 4 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 0 (glob) | ||||
6 5 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 1 (glob) | ||||
7 6 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 2 (glob) | ||||
8 7 -1 ??? ??? ??? ??? ??? 0 ??? ???? ? 1 3 (glob) | ||||
Gregory Szorc
|
r37434 | #endif | ||
Pierre-Yves David
|
r32265 | |||
Paul Morelle
|
r35395 | Test debuglocks command: | ||
$ hg debuglocks | ||||
lock: free | ||||
wlock: free | ||||
* Test setting the lock | ||||
waitlock <file> will wait for file to be created. If it isn't in a reasonable | ||||
amount of time, displays error message and returns 1 | ||||
$ waitlock() { | ||||
> start=`date +%s` | ||||
Paul Morelle
|
r35396 | > timeout=5 | ||
Paul Morelle
|
r35395 | > while [ \( ! -f $1 \) -a \( ! -L $1 \) ]; do | ||
> now=`date +%s` | ||||
> if [ "`expr $now - $start`" -gt $timeout ]; then | ||||
> echo "timeout: $1 was not created in $timeout seconds" | ||||
> return 1 | ||||
> fi | ||||
> sleep 0.1 | ||||
> done | ||||
> } | ||||
$ dolock() { | ||||
Paul Morelle
|
r35396 | > { | ||
> waitlock .hg/unlock | ||||
> rm -f .hg/unlock | ||||
> echo y | ||||
> } | hg debuglocks "$@" > /dev/null | ||||
Paul Morelle
|
r35395 | > } | ||
Paul Morelle
|
r35396 | $ dolock -s & | ||
Paul Morelle
|
r35395 | $ waitlock .hg/store/lock | ||
$ hg debuglocks | ||||
lock: user *, process * (*s) (glob) | ||||
wlock: free | ||||
[1] | ||||
$ touch .hg/unlock | ||||
$ wait | ||||
Paul Morelle
|
r35396 | $ [ -f .hg/store/lock ] || echo "There is no lock" | ||
There is no lock | ||||
Paul Morelle
|
r35395 | |||
* Test setting the wlock | ||||
Paul Morelle
|
r35396 | $ dolock -S & | ||
Paul Morelle
|
r35395 | $ waitlock .hg/wlock | ||
$ hg debuglocks | ||||
lock: free | ||||
wlock: user *, process * (*s) (glob) | ||||
[1] | ||||
$ touch .hg/unlock | ||||
$ wait | ||||
Paul Morelle
|
r35396 | $ [ -f .hg/wlock ] || echo "There is no wlock" | ||
There is no wlock | ||||
Paul Morelle
|
r35395 | |||
* Test setting both locks | ||||
Paul Morelle
|
r35396 | $ dolock -Ss & | ||
Paul Morelle
|
r35395 | $ waitlock .hg/wlock && waitlock .hg/store/lock | ||
$ hg debuglocks | ||||
lock: user *, process * (*s) (glob) | ||||
wlock: user *, process * (*s) (glob) | ||||
[2] | ||||
Paul Morelle
|
r35396 | |||
* Test failing to set a lock | ||||
$ hg debuglocks -s | ||||
abort: lock is already held | ||||
[255] | ||||
$ hg debuglocks -S | ||||
abort: wlock is already held | ||||
[255] | ||||
Paul Morelle
|
r35395 | $ touch .hg/unlock | ||
$ wait | ||||
$ hg debuglocks | ||||
lock: free | ||||
wlock: free | ||||
* Test forcing the lock | ||||
Paul Morelle
|
r35396 | $ dolock -s & | ||
Paul Morelle
|
r35395 | $ waitlock .hg/store/lock | ||
$ hg debuglocks | ||||
lock: user *, process * (*s) (glob) | ||||
wlock: free | ||||
[1] | ||||
$ hg debuglocks -L | ||||
$ hg debuglocks | ||||
lock: free | ||||
wlock: free | ||||
$ touch .hg/unlock | ||||
$ wait | ||||
* Test forcing the wlock | ||||
Paul Morelle
|
r35396 | $ dolock -S & | ||
Paul Morelle
|
r35395 | $ waitlock .hg/wlock | ||
$ hg debuglocks | ||||
lock: free | ||||
wlock: user *, process * (*s) (glob) | ||||
[1] | ||||
$ hg debuglocks -W | ||||
$ hg debuglocks | ||||
lock: free | ||||
wlock: free | ||||
$ touch .hg/unlock | ||||
$ wait | ||||
Yuya Nishihara
|
r32657 | Test WdirUnsupported exception | ||
$ hg debugdata -c ffffffffffffffffffffffffffffffffffffffff | ||||
abort: working directory revision cannot be specified | ||||
[255] | ||||
Pierre-Yves David
|
r32265 | Test cache warming command | ||
$ rm -rf .hg/cache/ | ||||
$ hg debugupdatecaches --debug | ||||
Pierre-Yves David
|
r32267 | updating the branch cache | ||
Pierre-Yves David
|
r32265 | $ ls -r .hg/cache/* | ||
r42100 | .hg/cache/tags2-served | |||
.hg/cache/tags2 | ||||
Pierre-Yves David
|
r32265 | .hg/cache/rbc-revs-v1 | ||
.hg/cache/rbc-names-v1 | ||||
r42424 | .hg/cache/hgtagsfnodes1 | |||
Kyle Lippincott
|
r42940 | .hg/cache/branch2-visible-hidden | ||
.hg/cache/branch2-visible | ||||
.hg/cache/branch2-served.hidden | ||||
Pierre-Yves David
|
r32265 | .hg/cache/branch2-served | ||
Kyle Lippincott
|
r42940 | .hg/cache/branch2-immutable | ||
.hg/cache/branch2-base | ||||
Pierre-Yves David
|
r32265 | |||
Yuya Nishihara
|
r37841 | Test debugcolor | ||
#if no-windows | ||||
$ hg debugcolor --style --color always | egrep 'mode|style|log\.' | ||||
Pulkit Goyal
|
r38463 | color mode: 'ansi' | ||
Yuya Nishihara
|
r37841 | available style: | ||
\x1b[0;33mlog.changeset\x1b[0m: \x1b[0;33myellow\x1b[0m (esc) | ||||
#endif | ||||
$ hg debugcolor --style --color never | ||||
color mode: None | ||||
available style: | ||||
Mateusz Kwapich
|
r23255 | $ cd .. | ||
Mads Kiilerich
|
r20244 | |||
Test internal debugstacktrace command | ||||
$ cat > debugstacktrace.py << EOF | ||||
Matt Harbison
|
r39937 | > from mercurial import ( | ||
> util, | ||||
> ) | ||||
Manuel Jacob
|
r45598 | > from mercurial.utils import ( | ||
> procutil, | ||||
> ) | ||||
Mads Kiilerich
|
r20244 | > def f(): | ||
Manuel Jacob
|
r45598 | > util.debugstacktrace(f=procutil.stdout) | ||
Mads Kiilerich
|
r31313 | > g() | ||
Mads Kiilerich
|
r20244 | > def g(): | ||
Matt Harbison
|
r39937 | > util.dst(b'hello from g\\n', skip=1) | ||
Mads Kiilerich
|
r31313 | > h() | ||
> def h(): | ||||
Matt Harbison
|
r39937 | > util.dst(b'hi ...\\nfrom h hidden in g', 1, depth=2) | ||
Mads Kiilerich
|
r31313 | > f() | ||
Mads Kiilerich
|
r20244 | > EOF | ||
Matt Harbison
|
r39743 | $ "$PYTHON" debugstacktrace.py | ||
Mads Kiilerich
|
r20244 | stacktrace at: | ||
Gregory Szorc
|
r49732 | *debugstacktrace.py:15 in * (glob) | ||
*debugstacktrace.py:8 in f (glob) | ||||
Mads Kiilerich
|
r31314 | hello from g at: | ||
Gregory Szorc
|
r49732 | *debugstacktrace.py:15 in * (glob) | ||
*debugstacktrace.py:9 in f (glob) | ||||
Mads Kiilerich
|
r31313 | hi ... | ||
from h hidden in g at: | ||||
Gregory Szorc
|
r49732 | *debugstacktrace.py:9 in f (glob) | ||
*debugstacktrace.py:12 in g (glob) | ||||
Boris Feld
|
r34960 | |||
Test debugcapabilities command: | ||||
$ hg debugcapabilities ./debugrevlog/ | ||||
Main capabilities: | ||||
branchmap | ||||
Boris Feld
|
r35073 | $USUAL_BUNDLE2_CAPS$ | ||
Boris Feld
|
r34960 | getbundle | ||
known | ||||
lookup | ||||
pushkey | ||||
unbundle | ||||
Boris Feld
|
r34961 | Bundle2 capabilities: | ||
HG20 | ||||
Boris Feld
|
r35260 | bookmarks | ||
Boris Feld
|
r34961 | changegroup | ||
01 | ||||
02 | ||||
Valentin Gatien-Baron
|
r44896 | checkheads | ||
related | ||||
Boris Feld
|
r34961 | digests | ||
md5 | ||||
sha1 | ||||
sha512 | ||||
error | ||||
abort | ||||
unsupportedcontent | ||||
pushraced | ||||
pushkey | ||||
hgtagsfnodes | ||||
listkeys | ||||
phases | ||||
heads | ||||
pushkey | ||||
remote-changegroup | ||||
http | ||||
https | ||||
Gregory Szorc
|
r35810 | stream | ||
v2 | ||||
Gregory Szorc
|
r35947 | |||
Test debugpeer | ||||
Valentin Gatien-Baron
|
r48732 | $ hg debugpeer ssh://user@dummy/debugrevlog | ||
Gregory Szorc
|
r35947 | url: ssh://user@dummy/debugrevlog | ||
local: no | ||||
pushable: yes | ||||
r49491 | #if rust | |||
Valentin Gatien-Baron
|
r48732 | $ hg --debug debugpeer ssh://user@dummy/debugrevlog | ||
Valentin Gatien-Baron
|
r48735 | running .* ".*[/\\]dummyssh" ['"]user@dummy['"] ['"]hg -R debugrevlog serve --stdio['"] (re) | ||
Boris Feld
|
r37831 | devel-peer-request: hello+between | ||
devel-peer-request: pairs: 81 bytes | ||||
Gregory Szorc
|
r35947 | sending hello command | ||
sending between command | ||||
r49542 | remote: 468 | |||
remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlog-compression-zstd,revlogv1,sparserevlog unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash | ||||
Gregory Szorc
|
r35947 | remote: 1 | ||
Joerg Sonnenberger
|
r37411 | devel-peer-request: protocaps | ||
devel-peer-request: caps: * bytes (glob) | ||||
sending protocaps command | ||||
Gregory Szorc
|
r35947 | url: ssh://user@dummy/debugrevlog | ||
local: no | ||||
pushable: yes | ||||
r49491 | ||||
#endif | ||||
#if no-rust zstd | ||||
$ hg --debug debugpeer ssh://user@dummy/debugrevlog | ||||
running .* ".*[/\\]dummyssh" ['"]user@dummy['"] ['"]hg -R debugrevlog serve --stdio['"] (re) | ||||
devel-peer-request: hello+between | ||||
devel-peer-request: pairs: 81 bytes | ||||
sending hello command | ||||
sending between command | ||||
r49498 | remote: 468 | |||
remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlog-compression-zstd,revlogv1,sparserevlog unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash | ||||
r49491 | remote: 1 | |||
devel-peer-request: protocaps | ||||
devel-peer-request: caps: * bytes (glob) | ||||
sending protocaps command | ||||
url: ssh://user@dummy/debugrevlog | ||||
local: no | ||||
pushable: yes | ||||
#endif | ||||
#if no-rust no-zstd | ||||
$ hg --debug debugpeer ssh://user@dummy/debugrevlog | ||||
running .* ".*[/\\]dummyssh" ['"]user@dummy['"] ['"]hg -R debugrevlog serve --stdio['"] (re) | ||||
devel-peer-request: hello+between | ||||
devel-peer-request: pairs: 81 bytes | ||||
sending hello command | ||||
sending between command | ||||
remote: 444 | ||||
remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1,sparserevlog unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash | ||||
remote: 1 | ||||
devel-peer-request: protocaps | ||||
devel-peer-request: caps: * bytes (glob) | ||||
sending protocaps command | ||||
url: ssh://user@dummy/debugrevlog | ||||
local: no | ||||
pushable: yes | ||||
#endif | ||||