Mercurial > hg
annotate tests/test-rhg.t @ 45923:ead435aa5294
rhg: add a `debugrequirements` subcommand
For now it only prints the contents of `.hg/requires` as-is, without parsing.
Differential Revision: https://phab.mercurial-scm.org/D9397
author | Simon Sapin <simon-commits@exyr.org> |
---|---|
date | Tue, 24 Nov 2020 15:11:58 +0100 |
parents | 57dc78861196 |
children | 2ad2745e0be9 |
rev | line source |
---|---|
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
1 #require rust |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
2 |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
3 Define an rhg function that will only run if rhg exists |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
4 $ rhg() { |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
5 > if [ -f "$RUNTESTDIR/../rust/target/debug/rhg" ]; then |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
6 > "$RUNTESTDIR/../rust/target/debug/rhg" "$@" |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
7 > else |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
8 > echo "skipped: Cannot find rhg. Try to run cargo build in rust/rhg." |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
9 > exit 80 |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
10 > fi |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
11 > } |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
12 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
13 Unimplemented command |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
14 $ rhg unimplemented-command |
45440
a6a000ab135b
rhg: print error message when argument parsing fails
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45437
diff
changeset
|
15 error: Found argument 'unimplemented-command' which wasn't expected, or isn't valid in this context |
a6a000ab135b
rhg: print error message when argument parsing fails
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45437
diff
changeset
|
16 |
a6a000ab135b
rhg: print error message when argument parsing fails
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45437
diff
changeset
|
17 USAGE: |
a6a000ab135b
rhg: print error message when argument parsing fails
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45437
diff
changeset
|
18 rhg <SUBCOMMAND> |
a6a000ab135b
rhg: print error message when argument parsing fails
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45437
diff
changeset
|
19 |
a6a000ab135b
rhg: print error message when argument parsing fails
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45437
diff
changeset
|
20 For more information try --help |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
21 [252] |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
22 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
23 Finding root |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
24 $ rhg root |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
25 abort: no repository found in '$TESTTMP' (.hg not found)! |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
26 [255] |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
27 |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
28 $ hg init repository |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
29 $ cd repository |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
30 $ rhg root |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
31 $TESTTMP/repository |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
32 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
33 Unwritable file descriptor |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
34 $ rhg root > /dev/full |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
35 abort: No space left on device (os error 28) |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
36 [255] |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
37 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
38 Deleted repository |
45050
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
39 $ rm -rf `pwd` |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
40 $ rhg root |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
41 abort: error getting current working directory: $ENOENT$ |
18f8d3b31baa
rhg: add a limited `rhg root` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
diff
changeset
|
42 [255] |
45437
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
43 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
44 Listing tracked files |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
45 $ cd $TESTTMP |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
46 $ hg init repository |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
47 $ cd repository |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
48 $ for i in 1 2 3; do |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
49 > echo $i >> file$i |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
50 > hg add file$i |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
51 > done |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
52 > hg commit -m "commit $i" -q |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
53 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
54 Listing tracked files from root |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
55 $ rhg files |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
56 file1 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
57 file2 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
58 file3 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
59 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
60 Listing tracked files from subdirectory |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
61 $ mkdir -p path/to/directory |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
62 $ cd path/to/directory |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
63 $ rhg files |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
64 ../../../file1 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
65 ../../../file2 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
66 ../../../file3 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
67 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
68 Listing tracked files through broken pipe |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
69 $ rhg files | head -n 1 |
e339693addc0
rhg: add harness tests for rhg files
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45050
diff
changeset
|
70 ../../../file1 |
45529
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
71 |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
72 Debuging data in inline index |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
73 $ cd $TESTTMP |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
74 $ rm -rf repository |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
75 $ hg init repository |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
76 $ cd repository |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
77 $ for i in 1 2 3; do |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
78 > echo $i >> file$i |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
79 > hg add file$i |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
80 > hg commit -m "commit $i" -q |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
81 > done |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
82 $ rhg debugdata -c 2 |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
83 e36fa63d37a576b27a69057598351db6ee5746bd |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
84 test |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
85 0 0 |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
86 file3 |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
87 |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
88 commit 3 (no-eol) |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
89 $ rhg debugdata -m 2 |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
90 file1\x00b8e02f6433738021a065f94175c7cd23db5f05be (esc) |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
91 file2\x005d9299349fc01ddd25d0070d149b124d8f10411e (esc) |
f17caf8f3fef
rhg: add a limited `rhg debugdata` subcommand
Antoine Cezar <antoine.cezar@octobus.net>
parents:
45440
diff
changeset
|
92 file3\x002661d26c649684b482d10f91960cc3db683c38b4 (esc) |
45804
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
93 |
45813
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
94 Debuging with full node id |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
95 $ rhg debugdata -c `hg log -r 0 -T '{node}'` |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
96 c8e64718e1ca0312eeee0f59d37f8dc612793856 |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
97 test |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
98 0 0 |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
99 file1 |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
100 |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
101 commit 1 (no-eol) |
57dc78861196
rhg: add full node id support for `debugdata` command
Antoine cezar<acezar@chwitlabs.fr>
parents:
45804
diff
changeset
|
102 |
45804
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
103 Cat files |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
104 $ cd $TESTTMP |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
105 $ rm -rf repository |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
106 $ hg init repository |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
107 $ cd repository |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
108 $ echo "original content" > original |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
109 $ hg add original |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
110 $ hg commit -m "add original" original |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
111 $ rhg cat -r 0 original |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
112 original content |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
113 Cat copied file should not display copy metadata |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
114 $ hg copy original copy_of_original |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
115 $ hg commit -m "add copy of original" |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
116 $ rhg cat -r 1 copy_of_original |
6991f3014311
rhg: strip copied files metadata from `cat` output
Antoine cezar<acezar@chwitlabs.fr>
parents:
45529
diff
changeset
|
117 original content |
45923
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
118 |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
119 Requirements |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
120 $ rhg debugrequirements |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
121 dotencode |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
122 fncache |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
123 generaldelta |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
124 revlogv1 |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
125 sparserevlog |
ead435aa5294
rhg: add a `debugrequirements` subcommand
Simon Sapin <simon-commits@exyr.org>
parents:
45813
diff
changeset
|
126 store |