annotate tests/test-censor.t @ 51269:db121ddd171e

censor: be more verbose about the other steps too If we informs the user about head checking, we should tell him when the other operation happens too. Otherwise the user can imagine to still be in the head checking part.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Fri, 01 Dec 2023 22:46:46 +0100
parents 622f00b350be
children ceeb8fa23cc8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
37406
8c37c3220ebc tests: skip test-censor.t when using simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
1 #require no-reposimplestore
47457
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
2 #testcases revlogv1 revlogv2
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
3
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
4 #if revlogv2
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
5
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
6 $ cat >> $HGRCPATH <<EOF
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
7 > [experimental]
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
8 > revlogv2=enable-unstable-format-and-corrupt-my-data
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
9 > EOF
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
10
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
11 #endif
37406
8c37c3220ebc tests: skip test-censor.t when using simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
12
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
13 $ cp $HGRCPATH $HGRCPATH.orig
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
14
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
15 Create repo with unimpeachable content
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
16
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
17 $ hg init r
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
18 $ cd r
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
19 $ echo 'Initially untainted file' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
20 $ echo 'Normal file here' > bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
21 $ hg add target bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
22 $ hg ci -m init
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
23
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
24 Clone repo so we can test pull later
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
25
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
26 $ cd ..
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
27 $ hg clone r rpull
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
28 updating to branch default
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
29 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
30 $ cd r
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
31
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
32 Introduce content which will ultimately require censorship. Name the first
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
33 censored node C1, second C2, and so on
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
34
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
35 $ echo 'Tainted file' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
36 $ echo 'Passwords: hunter2' >> target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
37 $ hg ci -m taint target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
38 $ C1=`hg id --debug -i`
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
39
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
40 $ echo 'hunter3' >> target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
41 $ echo 'Normal file v2' > bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
42 $ hg ci -m moretaint target bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
43 $ C2=`hg id --debug -i`
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
44
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
45 Add a new sanitized versions to correct our mistake. Name the first head H1,
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
46 the second head H2, and so on
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
47
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
48 $ echo 'Tainted file is now sanitized' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
49 $ hg ci -m sanitized target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
50 $ H1=`hg id --debug -i`
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
51
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
52 $ hg update -r $C2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
53 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
54 $ echo 'Tainted file now super sanitized' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
55 $ hg ci -m 'super sanitized' target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
56 created new head
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
57 $ H2=`hg id --debug -i`
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
58
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
59 Verify target contents before censorship at each revision
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
60
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
61 $ hg cat -r $H1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
62 Tainted file is now sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
63 $ hg cat -r $H2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
64 Tainted file now super sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
65 $ hg cat -r $C2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
66 Tainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
67 Passwords: hunter2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
68 hunter3
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
69 $ hg cat -r $C1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
70 Tainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
71 Passwords: hunter2
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
72 $ hg cat -r 0 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
73 Initially untainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
74
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
75 Censor revision with 2 offenses
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
76
25806
5e18f6e39006 censor: make various path forms available like other Mercurial commands
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24361
diff changeset
77 (this also tests file pattern matching: path relative to cwd case)
5e18f6e39006 censor: make various path forms available like other Mercurial commands
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24361
diff changeset
78
5e18f6e39006 censor: make various path forms available like other Mercurial commands
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24361
diff changeset
79 $ mkdir -p foo/bar/baz
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
80 $ hg --config extensions.censor= --cwd foo/bar/baz censor -r $C2 -t "remove password" ../../../target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
81 checking for the censored content in 2 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
82 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
83 censoring 1 file revision
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
84 $ hg cat -r $H1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
85 Tainted file is now sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
86 $ hg cat -r $H2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
87 Tainted file now super sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
88 $ hg cat -r $C2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
89 abort: censored node: 1e0247a9a4b7
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
90 (set censor.policy to ignore errors)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
91 $ hg cat -r $C1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
92 Tainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
93 Passwords: hunter2
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
94 $ hg cat -r 0 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
95 Initially untainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
96
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
97 Censor revision with 1 offense
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
98
25806
5e18f6e39006 censor: make various path forms available like other Mercurial commands
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24361
diff changeset
99 (this also tests file pattern matching: with 'path:' scheme)
5e18f6e39006 censor: make various path forms available like other Mercurial commands
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24361
diff changeset
100
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
101 $ hg --config extensions.censor= --cwd foo/bar/baz censor -r $C1 path:target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
102 checking for the censored content in 2 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
103 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
104 censoring 1 file revision
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
105 $ hg cat -r $H1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
106 Tainted file is now sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
107 $ hg cat -r $H2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
108 Tainted file now super sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
109 $ hg cat -r $C2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
110 abort: censored node: 1e0247a9a4b7
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
111 (set censor.policy to ignore errors)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
112 $ hg cat -r $C1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
113 abort: censored node: 613bc869fceb
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
114 (set censor.policy to ignore errors)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
115 $ hg cat -r 0 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
116 Initially untainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
117
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
118 Can only checkout target at uncensored revisions, -X is workaround for --all
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
119
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
120 $ hg revert -r $C2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
121 abort: censored node: 1e0247a9a4b7
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
122 (set censor.policy to ignore errors)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
123 $ hg revert -r $C1 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
124 abort: censored node: 613bc869fceb
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
125 (set censor.policy to ignore errors)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
126 $ hg revert -r $C1 --all
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
127 reverting bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
128 reverting target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
129 abort: censored node: 613bc869fceb
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
130 (set censor.policy to ignore errors)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
131 [255]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
132 $ hg revert -r $C1 --all -X target
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
133 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
134 Tainted file now super sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
135 $ hg revert -r 0 --all
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
136 reverting target
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
137 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
138 Initially untainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
139 $ hg revert -r $H2 --all
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
140 reverting bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
141 reverting target
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
142 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
143 Tainted file now super sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
144
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
145 Uncensored file can be viewed at any revision
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
146
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
147 $ hg cat -r $H1 bystander | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
148 Normal file v2
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
149 $ hg cat -r $C2 bystander | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
150 Normal file v2
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
151 $ hg cat -r $C1 bystander | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
152 Normal file here
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
153 $ hg cat -r 0 bystander | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
154 Normal file here
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
155
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
156 Can update to children of censored revision
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
157
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
158 $ hg update -r $H1
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
159 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
160 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
161 Tainted file is now sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
162 $ hg update -r $H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
163 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
164 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
165 Tainted file now super sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
166
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
167 Set censor policy to abort in trusted $HGRC so hg verify fails
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
168
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
169 $ cp $HGRCPATH.orig $HGRCPATH
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
170 $ cat >> $HGRCPATH <<EOF
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
171 > [censor]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
172 > policy = abort
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
173 > EOF
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
174
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
175 Repo fails verification due to censorship
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
176
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
177 $ hg verify
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
178 checking changesets
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
179 checking manifests
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
180 crosschecking files in changesets and manifests
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
181 checking files
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
182 target@1: censored file data
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
183 target@2: censored file data
49826
c84844cd523a verify: also check dirstate
Raphaël Gomès <rgomes@octobus.net>
parents: 49825
diff changeset
184 not checking dirstate because of previous errors
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 39480
diff changeset
185 checked 5 changesets with 7 changes to 2 files
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
186 2 integrity errors encountered!
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
187 (first damaged changeset appears to be 1)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
188 [1]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
189
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
190 Cannot update to revision with censored data
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
191
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
192 $ hg update -r $C2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
193 abort: censored node: 1e0247a9a4b7
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
194 (set censor.policy to ignore errors)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
195 [255]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
196 $ hg update -r $C1
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
197 abort: censored node: 613bc869fceb
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
198 (set censor.policy to ignore errors)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
199 [255]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
200 $ hg update -r 0
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
201 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
202 $ hg update -r $H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
203 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
204
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
205 Set censor policy to ignore in trusted $HGRC so hg verify passes
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
206
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
207 $ cp $HGRCPATH.orig $HGRCPATH
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
208 $ cat >> $HGRCPATH <<EOF
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
209 > [censor]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
210 > policy = ignore
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
211 > EOF
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
212
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
213 Repo passes verification with warnings with explicit config
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
214
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49174
diff changeset
215 $ hg verify -q
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
216
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
217 May update to revision with censored data with explicit config
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
218
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
219 $ hg update -r $C2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
220 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
221 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
222 $ hg update -r $C1
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
223 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
224 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
225 $ hg update -r 0
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
226 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
227 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
228 Initially untainted file
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
229 $ hg update -r $H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
230 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
231 $ cat target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
232 Tainted file now super sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
233
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
234 Can merge in revision with censored data. Test requires one branch of history
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
235 with the file censored, but we can't censor at a head, so advance H1.
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
236
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
237 $ hg update -r $H1
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
238 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
239 $ C3=$H1
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
240 $ echo 'advanced head H1' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
241 $ hg ci -m 'advance head H1' target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
242 $ H1=`hg id --debug -i`
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
243 $ hg --config extensions.censor= censor -r $C3 target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
244 checking for the censored content in 2 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
245 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
246 censoring 1 file revision
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
247 $ hg update -r $H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
248 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
249 $ hg merge -r $C3
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
250 merging target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
251 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
252 (branch merge, don't forget to commit)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
253
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
254 Revisions present in repository heads may not be censored
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
255
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
256 $ hg update -C -r $H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
257 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
258 $ hg --config extensions.censor= censor -r $H2 target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
259 checking for the censored content in 2 heads
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
260 abort: cannot censor file in heads (78a8fc215e79)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
261 (clean/delete and commit first)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
262 [255]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
263 $ echo 'twiddling thumbs' > bystander
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
264 $ hg ci -m 'bystander commit'
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
265 $ H2=`hg id --debug -i`
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
266 $ hg --config extensions.censor= censor -r "$H2^" target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
267 checking for the censored content in 2 heads
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
268 abort: cannot censor file in heads (efbe78065929)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
269 (clean/delete and commit first)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
270 [255]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
271
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
272 Cannot censor working directory
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
273
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
274 $ echo 'seriously no passwords' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
275 $ hg ci -m 'extend second head arbitrarily' target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
276 $ H2=`hg id --debug -i`
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
277 $ hg update -r "$H2^"
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
278 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
279 $ hg --config extensions.censor= censor -r . target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
280 checking for the censored content in 2 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
281 checking for the censored content in the working directory
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
282 abort: cannot censor working directory
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
283 (clean/delete/update first)
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
284 [255]
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
285 $ hg update -r $H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
286 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
287
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
288 Can re-add file after being deleted + censored
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
289
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
290 $ C4=$H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
291 $ hg rm target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
292 $ hg ci -m 'delete target so it may be censored'
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
293 $ H2=`hg id --debug -i`
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
294 $ hg --config extensions.censor= censor -r $C4 target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
295 checking for the censored content in 2 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
296 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
297 censoring 1 file revision
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
298 $ hg cat -r $C4 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
299 $ hg cat -r "$H2^^" target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
300 Tainted file now super sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
301 $ echo 'fresh start' > target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
302 $ hg add target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
303 $ hg ci -m reincarnated target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
304 $ H2=`hg id --debug -i`
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
305 $ hg cat -r $H2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
306 fresh start
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
307 $ hg cat -r "$H2^" target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
308 target: no such file in rev 452ec1762369
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
309 $ hg cat -r $C4 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
310 $ hg cat -r "$H2^^^" target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
311 Tainted file now super sanitized
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
312
51156
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
313 Can censor enough revision to move back to inline storage
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
314
51156
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
315 $ hg debugrevlogstats | grep target
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
316 rev-count data-size inl type target
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
317 8 ??? no file target (glob) (revlogv2 !)
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
318 8 ??? yes file target (glob) (revlogv1 !)
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
319 $ cat /dev/rand?m | dd status=none count=200 | f --hexdump > target
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
320 $ hg ci -m 'add 100k passwords'
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
321 $ H2=`hg id --debug -i`
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
322 $ C5=$H2
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
323 $ hg revert -r "$H2^" target
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
324 $ hg ci -m 'cleaned 100k passwords'
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
325 $ H2=`hg id --debug -i`
51156
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
326 $ hg debugrevlogstats | grep target
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
327 rev-count data-size inl type target
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
328 10 ?????? no file target (glob)
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
329 $ hg --config extensions.censor= censor -r $C5 target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
330 checking for the censored content in 2 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
331 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
332 censoring 1 file revision
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
333
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
334 The important part is for the censor operation to not crash and the repository
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
335 to not be corrupted. Right now this involve keeping the revlog split.
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
336
51156
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
337 $ hg debugrevlogstats | grep target
22d11305f365 censor: show that the `not-inline` → `inline` test is broken
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51079
diff changeset
338 rev-count data-size inl type target
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
339 10 ??? no file target (glob)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
340 $ hg cat -r $C5 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
341 $ hg cat -r $H2 target | head -n 10
24347
1bcfecbbf569 censor: add censor command to hgext with basic client-side tests
Mike Edgar <adgar@google.com>
parents:
diff changeset
342 fresh start
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
343 $ hg verify
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
344 checking changesets
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
345 checking manifests
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
346 crosschecking files in changesets and manifests
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
347 checking files
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
348 checking dirstate
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
349 checked 12 changesets with 13 changes to 2 files
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
350
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
351 Repo with censored nodes can be cloned and cloned nodes are censored
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
352
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
353 $ cd ..
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
354 $ hg clone r rclone
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
355 updating to branch default
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
356 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
357 $ cd rclone
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
358 $ hg cat -r $H1 target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
359 advanced head H1
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
360 $ hg cat -r $H2~5 target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
361 Tainted file now super sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
362 $ hg cat -r $C2 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
363 $ hg cat -r $C1 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
364 $ hg cat -r 0 target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
365 Initially untainted file
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49174
diff changeset
366 $ hg verify -q
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
367
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
368 Repo cloned before tainted content introduced can pull censored nodes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
369
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
370 $ cd ../rpull
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
371 $ hg cat -r tip target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
372 Initially untainted file
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49174
diff changeset
373 $ hg verify -q
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
374 $ hg pull -r $H1 -r $H2
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
375 pulling from $TESTTMP/r
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
376 searching for changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
377 adding changesets
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
378 adding manifests
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
379 adding file changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
380 added 11 changesets with 11 changes to 2 files (+1 heads)
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
381 new changesets * (glob)
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
382 (run 'hg heads' to see heads, 'hg merge' to merge)
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
383 $ hg update 4
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
384 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
385 $ cat target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
386 Tainted file now super sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
387 $ hg cat -r $H1 target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
388 advanced head H1
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
389 $ hg cat -r $H2~5 target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
390 Tainted file now super sanitized
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
391 $ hg cat -r $C2 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
392 $ hg cat -r $C1 target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
393 $ hg cat -r 0 target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
394 Initially untainted file
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49174
diff changeset
395 $ hg verify -q
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
396
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
397 Censored nodes can be pushed if they censor previously unexchanged nodes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
398
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
399 $ echo 'Passwords: hunter2hunter2' > target
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
400 $ hg ci -m 're-add password from clone' target
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
401 created new head
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
402 $ H3=`hg id --debug -i`
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
403 $ REV=$H3
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
404 $ echo 'Re-sanitized; nothing to see here' > target
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
405 $ hg ci -m 're-sanitized' target
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
406 $ H2=`hg id --debug -i`
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
407 $ CLEANREV=$H2
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
408 $ hg cat -r $REV target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
409 Passwords: hunter2hunter2
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
410 $ hg --config extensions.censor= censor -r $REV target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
411 checking for the censored content in 3 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
412 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
413 censoring 1 file revision
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
414 $ hg cat -r $REV target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
415 $ hg cat -r $CLEANREV target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
416 Re-sanitized; nothing to see here
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
417 $ hg push -f -r $H2
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
418 pushing to $TESTTMP/r
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
419 searching for changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
420 adding changesets
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
421 adding manifests
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
422 adding file changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
423 added 2 changesets with 2 changes to 1 files (+1 heads)
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
424
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
425 $ cd ../r
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
426 $ hg cat -r $REV target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
427 $ hg cat -r $CLEANREV target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
428 Re-sanitized; nothing to see here
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
429 $ hg update $CLEANREV
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
430 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
431 $ cat target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
432 Re-sanitized; nothing to see here
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
433
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
434 Censored nodes can be bundled up and unbundled in another repo
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
435
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
436 $ hg bundle --base 0 ../pwbundle
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
437 13 changesets found
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
438 $ cd ../rclone
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
439 $ hg unbundle ../pwbundle
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
440 adding changesets
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
441 adding manifests
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
442 adding file changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
443 added 2 changesets with 2 changes to 2 files (+1 heads)
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
444 new changesets * (glob)
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
445 (run 'hg heads .' to see heads, 'hg merge' to merge)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
446 $ hg cat -r $REV target | head -n 10
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
447 $ hg cat -r $CLEANREV target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
448 Re-sanitized; nothing to see here
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
449 $ hg update $CLEANREV
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
450 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
451 $ cat target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
452 Re-sanitized; nothing to see here
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49174
diff changeset
453 $ hg verify -q
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
454
43433
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
455 Grepping only warns, doesn't error out
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
456
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
457 $ cd ../rpull
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
458 $ hg grep 'Normal file'
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
459 bystander:Normal file v2
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
460 $ hg grep nothing
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
461 target:Re-sanitized; nothing to see here
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
462 $ hg grep --diff 'Normal file'
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
463 cannot search in censored file: target:7
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
464 cannot search in censored file: target:10
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
465 cannot search in censored file: target:12
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
466 bystander:6:-:Normal file v2
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
467 cannot search in censored file: target:1
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
468 cannot search in censored file: target:2
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
469 cannot search in censored file: target:3
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
470 bystander:2:-:Normal file here
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
471 bystander:2:+:Normal file v2
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
472 bystander:0:+:Normal file here
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
473 $ hg grep --diff nothing
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
474 cannot search in censored file: target:7
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
475 cannot search in censored file: target:10
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
476 cannot search in censored file: target:12
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
477 target:13:+:Re-sanitized; nothing to see here
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
478 cannot search in censored file: target:1
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
479 cannot search in censored file: target:2
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
480 cannot search in censored file: target:3
13b8097dccbf grep: warn on censored revisions instead of erroring out
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 39707
diff changeset
481
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
482 Censored nodes can be imported on top of censored nodes, consecutively
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
483
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
484 $ hg init ../rimport
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
485 $ hg bundle --base 1 ../rimport/splitbundle
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
486 12 changesets found
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
487 $ cd ../rimport
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
488 $ hg pull -r $H1 -r $H2 ../r
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
489 pulling from ../r
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
490 adding changesets
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
491 adding manifests
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
492 adding file changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
493 added 8 changesets with 10 changes to 2 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32940
diff changeset
494 new changesets e97f55b2665a:dcbaf17bf3a1
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
495 (run 'hg heads' to see heads, 'hg merge' to merge)
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
496 $ hg unbundle splitbundle
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
497 adding changesets
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
498 adding manifests
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
499 adding file changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
500 added 6 changesets with 5 changes to 2 files (+1 heads)
51159
3e2a878fb96f censor: fix things around inlining
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51156
diff changeset
501 new changesets * (glob)
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
502 (run 'hg heads .' to see heads, 'hg merge' to merge)
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
503 $ hg update $H2
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
504 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
505 $ cat target | head -n 10
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
506 Re-sanitized; nothing to see here
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49174
diff changeset
507 $ hg verify -q
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
508 $ cd ../r
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
509
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
510 Can import bundle where first revision of a file is censored
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
511
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
512 $ hg init ../rinit
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
513 $ hg --config extensions.censor= censor -r 0 target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
514 checking for the censored content in 3 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
515 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
516 censoring 1 file revision
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
517 $ hg bundle -r 0 --base null ../rinit/initbundle
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
518 1 changesets found
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
519 $ cd ../rinit
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
520 $ hg unbundle initbundle
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
521 adding changesets
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
522 adding manifests
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
523 adding file changes
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
524 added 1 changesets with 2 changes to 2 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 37406
diff changeset
525 new changesets e97f55b2665a (1 drafts)
24348
b7f936f47f2b censor: add exchange tests, via local push/pull and bundle/unbundle
Mike Edgar <adgar@google.com>
parents: 24347
diff changeset
526 (run 'hg update' to get a working copy)
47390
65b86f516ba2 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43433
diff changeset
527 $ hg cat -r 0 target | head -n 10
47457
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
528
51268
622f00b350be censor: add a command flag to skip the head checks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51267
diff changeset
529 Can skip the head checking steps
622f00b350be censor: add a command flag to skip the head checks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51267
diff changeset
530
622f00b350be censor: add a command flag to skip the head checks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51267
diff changeset
531 $ hg --config extensions.censor= censor -r 0 --no-check-heads target
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
532 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
533 censoring 1 file revision
51268
622f00b350be censor: add a command flag to skip the head checks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51267
diff changeset
534
47457
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
535 #if revlogv2
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
536
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
537 Testing feature that does not work in revlog v1
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
538 ===============================================
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
539
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
540 Censoring a revision that is used as delta base
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
541 -----------------------------------------------
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
542
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
543 $ cd ..
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
544 $ hg init censor-with-delta
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
545 $ cd censor-with-delta
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
546 $ echo root > target
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
547 $ hg add target
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
548 $ hg commit -m root
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
549 $ B0=`hg id --debug -i`
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
550 $ for x in `"$PYTHON" $TESTDIR/seq.py 0 50000`
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
551 > do
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
552 > echo "Password: hunter$x" >> target
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
553 > done
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
554 $ hg ci -m 'write a long file'
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
555 $ B1=`hg id --debug -i`
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
556 $ echo 'small change (should create a delta)' >> target
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
557 $ hg ci -m 'create a delta over the password'
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
558 (should show that the last revision is a delta, not a snapshot)
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
559 $ B2=`hg id --debug -i`
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
560
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
561 Make sure the last revision is a delta against the revision we will censor
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
562
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
563 $ hg debugdeltachain target -T '{rev} {chainid} {chainlen} {prevrev}\n'
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
564 0 1 1 -1
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
565 1 2 1 -1
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
566 2 2 2 1
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
567
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
568 Censor the file
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
569
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
570 $ hg cat -r $B1 target | wc -l
48324
95ea181d9bdd tests: fix test-censor by improving regexp (issue6585)
Thomas Klausner <wiz@gatalith.at>
parents: 47457
diff changeset
571 *50002 (re)
49174
3f86ee422095 censor: make rhg fall back to python when encountering a censored node
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 48324
diff changeset
572 $ hg --config extensions.censor= censor -r $B1 target
51267
195ab99cf791 censor: inform the user that we are spending time checking heads
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51159
diff changeset
573 checking for the censored content in 1 heads
51269
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
574 checking for the censored content in the working directory
db121ddd171e censor: be more verbose about the other steps too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51268
diff changeset
575 censoring 1 file revision
47457
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
576 $ hg cat -r $B1 target | wc -l
48324
95ea181d9bdd tests: fix test-censor by improving regexp (issue6585)
Thomas Klausner <wiz@gatalith.at>
parents: 47457
diff changeset
577 *0 (re)
47457
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
578
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
579 Check the children is fine
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
580
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
581 $ hg cat -r $B2 target | wc -l
48324
95ea181d9bdd tests: fix test-censor by improving regexp (issue6585)
Thomas Klausner <wiz@gatalith.at>
parents: 47457
diff changeset
582 *50003 (re)
47457
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
583
f8330a3fc39f censor: implement censoring for revlogv2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47392
diff changeset
584 #endif
51078
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
585
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
586 Testing repository upgrade with censors revision
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
587 ================================================
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
588
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
589 $ cd ../rclone
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
590
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
591 With the "abort" policy
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
592 =======================
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
593
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
594 $ hg verify --config censor.policy=ignore
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
595 checking changesets
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
596 checking manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
597 crosschecking files in changesets and manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
598 checking files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
599 checking dirstate
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
600 checked 14 changesets with 15 changes to 2 files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
601 $ hg debugupgraderepo --run --quiet \
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
602 > --optimize re-delta-parent \
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
603 > --config censor.policy=abort
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
604 upgrade will perform the following actions:
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
605
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
606 requirements
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
607 preserved: * (glob)
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
608
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
609 optimisations: re-delta-parent
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
610
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
611 processed revlogs:
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
612 - all-filelogs
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
613 - changelog
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
614 - manifest
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
615
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
616 $ hg verify --config censor.policy=ignore
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
617 checking changesets
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
618 checking manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
619 crosschecking files in changesets and manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
620 checking files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
621 checking dirstate
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
622 checked 14 changesets with 15 changes to 2 files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
623
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
624 With the "ignore" policy
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
625 ========================
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
626
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
627 $ hg verify --config censor.policy=ignore
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
628 checking changesets
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
629 checking manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
630 crosschecking files in changesets and manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
631 checking files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
632 checking dirstate
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
633 checked 14 changesets with 15 changes to 2 files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
634 $ hg debugupgraderepo --run --quiet \
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
635 > --optimize re-delta-parent \
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
636 > --config censor.policy=ignore
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
637 upgrade will perform the following actions:
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
638
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
639 requirements
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
640 preserved: * (glob)
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
641
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
642 optimisations: re-delta-parent
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
643
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
644 processed revlogs:
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
645 - all-filelogs
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
646 - changelog
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
647 - manifest
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
648
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
649 $ hg verify --config censor.policy=ignore
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
650 checking changesets
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
651 checking manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
652 crosschecking files in changesets and manifests
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
653 checking files
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
654 checking dirstate
45dab30f9d55 censor: show that censored revision prevent repository upgrade
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49826
diff changeset
655 checked 14 changesets with 15 changes to 2 files