annotate tests/test-push.t @ 38885:5839a170357d

changegroup: move deltaparent() from narrow I'm not keen on performing the attribute sniff to test for presence of ellipses mode: I'd rather we use a separate packer instance that was ellipses mode specific. But I've tried to formalize a better API without narrow in core and I can't make sense of all the monkeypatching. My goal is to inline as much of the monkeypatching as possible then refactor the changegroup generation API. We add this code to the cg2packer because narrow doesn't work with cg1. Differential Revision: https://phab.mercurial-scm.org/D4062
author Gregory Szorc <gregory.szorc@gmail.com>
date Thu, 02 Aug 2018 09:40:18 -0700
parents e1942c196f66
children 89630d0b3e23
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
1 ==================================
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
2 Basic testing for the push command
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
3 ==================================
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
4
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
5 Testing of the '--rev' flag
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
6 ===========================
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
7
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
8 $ hg init test-revflag
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
9 $ hg -R test-revflag unbundle "$TESTDIR/bundles/remote.hg"
14117
07708f4171f1 tests: create a bundle to bootstrap tests using a remote repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12279
diff changeset
10 adding changesets
07708f4171f1 tests: create a bundle to bootstrap tests using a remote repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12279
diff changeset
11 adding manifests
07708f4171f1 tests: create a bundle to bootstrap tests using a remote repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12279
diff changeset
12 adding file changes
07708f4171f1 tests: create a bundle to bootstrap tests using a remote repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12279
diff changeset
13 added 9 changesets with 7 changes to 4 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33660
diff changeset
14 new changesets bfaf4b5cbf01:916f1afdef90
14117
07708f4171f1 tests: create a bundle to bootstrap tests using a remote repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12279
diff changeset
15 (run 'hg heads' to see heads, 'hg merge' to merge)
1781
284fc722c342 add an optional argument to push only the specified revisions (push -r)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
16
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
17 $ for i in 0 1 2 3 4 5 6 7 8; do
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
18 > echo
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
19 > hg init test-revflag-"$i"
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
20 > hg -R test-revflag push -r "$i" test-revflag-"$i"
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
21 > hg -R test-revflag-"$i" verify
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
22 > done
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
23
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
24 pushing to test-revflag-0
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
25 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
26 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
27 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
28 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
29 added 1 changesets with 1 changes to 1 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
30 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
31 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
32 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
33 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
34 1 files, 1 changesets, 1 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
35
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
36 pushing to test-revflag-1
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
37 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
38 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
39 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
40 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
41 added 2 changesets with 2 changes to 1 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
42 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
43 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
44 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
45 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
46 1 files, 2 changesets, 2 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
47
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
48 pushing to test-revflag-2
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
49 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
50 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
51 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
52 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
53 added 3 changesets with 3 changes to 1 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
54 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
55 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
56 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
57 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
58 1 files, 3 changesets, 3 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
59
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
60 pushing to test-revflag-3
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
61 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
62 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
63 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
64 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
65 added 4 changesets with 4 changes to 1 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
66 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
67 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
68 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
69 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
70 1 files, 4 changesets, 4 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
71
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
72 pushing to test-revflag-4
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
73 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
74 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
75 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
76 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
77 added 2 changesets with 2 changes to 1 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
78 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
79 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
80 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
81 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
82 1 files, 2 changesets, 2 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
83
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
84 pushing to test-revflag-5
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
85 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
86 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
87 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
88 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
89 added 3 changesets with 3 changes to 1 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
90 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
91 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
92 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
93 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
94 1 files, 3 changesets, 3 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
95
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
96 pushing to test-revflag-6
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
97 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
98 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
99 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
100 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
101 added 4 changesets with 5 changes to 2 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
102 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
103 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
104 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
105 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
106 2 files, 4 changesets, 5 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
107
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
108 pushing to test-revflag-7
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
109 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
110 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
111 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
112 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
113 added 5 changesets with 6 changes to 3 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
114 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
115 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
116 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
117 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
118 3 files, 5 changesets, 6 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
119
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
120 pushing to test-revflag-8
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
121 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
122 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
123 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
124 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
125 added 5 changesets with 5 changes to 2 files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
126 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
127 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
128 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
129 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
130 2 files, 5 changesets, 5 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
131
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
132 $ cd test-revflag-8
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
133
30279
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
134 $ hg pull ../test-revflag-7
a8d2071c3373 test: rename 'test-push-r.t' to 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30278
diff changeset
135 pulling from ../test-revflag-7
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
136 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
137 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
138 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
139 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
140 added 4 changesets with 2 changes to 3 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33660
diff changeset
141 new changesets c70afb1ee985:faa2e4234c7a
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
142 (run 'hg heads' to see heads, 'hg merge' to merge)
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
143
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
144 $ hg verify
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
145 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
146 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
147 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
148 checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
149 4 files, 9 changesets, 7 total revisions
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3853
diff changeset
150
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16350
diff changeset
151 $ cd ..
30280
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
152
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
153 Test server side validation during push
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
154 =======================================
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
155
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
156 $ hg init test-validation
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
157 $ cd test-validation
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
158
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
159 $ cat > .hg/hgrc <<EOF
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
160 > [server]
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
161 > validate=1
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
162 > EOF
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
163
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
164 $ echo alpha > alpha
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
165 $ echo beta > beta
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
166 $ hg addr
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
167 adding alpha
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
168 adding beta
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
169 $ hg ci -m 1
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
170
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
171 $ cd ..
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
172 $ hg clone test-validation test-validation-clone
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
173 updating to branch default
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
174 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
175
37344
e1942c196f66 tests: skip filelog damage tests when not using revlogs
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
176 #if reporevlogstore
e1942c196f66 tests: skip filelog damage tests when not using revlogs
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
177
30280
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
178 Test spurious filelog entries:
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
179
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
180 $ cd test-validation-clone
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
181 $ echo blah >> beta
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
182 $ cp .hg/store/data/beta.i tmp1
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
183 $ hg ci -m 2
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
184 $ cp .hg/store/data/beta.i tmp2
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
185 $ hg -q rollback
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
186 $ mv tmp2 .hg/store/data/beta.i
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
187 $ echo blah >> beta
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
188 $ hg ci -m '2 (corrupt)'
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
189
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
190 Expected to fail:
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
191
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
192 $ hg verify
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
193 checking changesets
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
194 checking manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
195 crosschecking files in changesets and manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
196 checking files
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
197 beta@1: dddc47b3ba30 not in manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
198 2 files, 2 changesets, 4 total revisions
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
199 1 integrity errors encountered!
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
200 (first damaged changeset appears to be 1)
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
201 [1]
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
202
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
203 $ hg push
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
204 pushing to $TESTTMP/test-validation
30280
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
205 searching for changes
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
206 adding changesets
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
207 adding manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
208 adding file changes
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
209 transaction abort!
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
210 rollback completed
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
211 abort: received spurious file revlog entry
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
212 [255]
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
213
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
214 $ hg -q rollback
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
215 $ mv tmp1 .hg/store/data/beta.i
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
216 $ echo beta > beta
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
217
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
218 Test missing filelog entries:
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
219
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
220 $ cp .hg/store/data/beta.i tmp
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
221 $ echo blah >> beta
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
222 $ hg ci -m '2 (corrupt)'
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
223 $ mv tmp .hg/store/data/beta.i
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
224
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
225 Expected to fail:
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
226
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
227 $ hg verify
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
228 checking changesets
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
229 checking manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
230 crosschecking files in changesets and manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
231 checking files
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
232 beta@1: manifest refers to unknown revision dddc47b3ba30
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
233 2 files, 2 changesets, 2 total revisions
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
234 1 integrity errors encountered!
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
235 (first damaged changeset appears to be 1)
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
236 [1]
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
237
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
238 $ hg push
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
239 pushing to $TESTTMP/test-validation
30280
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
240 searching for changes
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
241 adding changesets
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
242 adding manifests
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
243 adding file changes
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
244 transaction abort!
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
245 rollback completed
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
246 abort: missing file data for beta:dddc47b3ba30e54484720ce0f4f768a0f4b6efb9 - run hg verify
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
247 [255]
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
248
0269ab4f4371 tests: merge 'test-push-validation.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30279
diff changeset
249 $ cd ..
30281
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
250
37344
e1942c196f66 tests: skip filelog damage tests when not using revlogs
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
251 #endif
e1942c196f66 tests: skip filelog damage tests when not using revlogs
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
252
30281
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
253 Test push hook locking
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
254 =====================
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
255
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
256 $ hg init 1
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
257
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
258 $ echo '[ui]' >> 1/.hg/hgrc
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
259 $ echo 'timeout = 10' >> 1/.hg/hgrc
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
260
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
261 $ echo foo > 1/foo
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
262 $ hg --cwd 1 ci -A -m foo
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
263 adding foo
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
264
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
265 $ hg clone 1 2
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
266 updating to branch default
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
267 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
268
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
269 $ hg clone 2 3
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
270 updating to branch default
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
271 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
272
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
273 $ cat <<EOF > $TESTTMP/debuglocks-pretxn-hook.sh
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
274 > hg debuglocks
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
275 > true
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
276 > EOF
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
277 $ echo '[hooks]' >> 2/.hg/hgrc
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
278 $ echo "pretxnchangegroup.a = sh $TESTTMP/debuglocks-pretxn-hook.sh" >> 2/.hg/hgrc
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
279 $ echo 'changegroup.push = hg push -qf ../1' >> 2/.hg/hgrc
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
280
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
281 $ echo bar >> 3/foo
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
282 $ hg --cwd 3 ci -m bar
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
283
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
284 $ hg --cwd 3 push ../2 --config devel.legacy.exchange=bundle1
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
285 pushing to ../2
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
286 searching for changes
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
287 adding changesets
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
288 adding manifests
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
289 adding file changes
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
290 added 1 changesets with 1 changes to 1 files
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
291 lock: user *, process * (*s) (glob)
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
292 wlock: free
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
293
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
294 $ hg --cwd 1 --config extensions.strip= strip tip -q
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
295 $ hg --cwd 2 --config extensions.strip= strip tip -q
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
296 $ hg --cwd 3 push ../2 # bundle2+
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
297 pushing to ../2
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
298 searching for changes
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
299 adding changesets
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
300 adding manifests
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
301 adding file changes
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
302 added 1 changesets with 1 changes to 1 files
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
303 lock: user *, process * (*s) (glob)
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
304 wlock: user *, process * (*s) (glob)
e58acb4fc510 tests: merge 'test-push-hook-lock.t' into 'test-push.t'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30280
diff changeset
305
33138
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
306 Test bare push with multiple race checking options
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
307 --------------------------------------------------
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
308
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
309 $ hg init test-bare-push-no-concurrency
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
310 $ hg init test-bare-push-unrelated-concurrency
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
311 $ hg -R test-revflag push -r 0 test-bare-push-no-concurrency --config server.concurrent-push-mode=strict
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
312 pushing to test-bare-push-no-concurrency
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
313 searching for changes
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
314 adding changesets
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
315 adding manifests
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
316 adding file changes
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
317 added 1 changesets with 1 changes to 1 files
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
318 $ hg -R test-revflag push -r 0 test-bare-push-unrelated-concurrency --config server.concurrent-push-mode=check-related
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
319 pushing to test-bare-push-unrelated-concurrency
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
320 searching for changes
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
321 adding changesets
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
322 adding manifests
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
323 adding file changes
78fc540c53e1 pushrace: avoid crash on bare push when using concurrent push mode
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 30281
diff changeset
324 added 1 changesets with 1 changes to 1 files
33655
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
325
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
326 SEC: check for unsafe ssh url
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
327
33660
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
328 $ cat >> $HGRCPATH << EOF
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
329 > [ui]
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
330 > ssh = sh -c "read l; read l; read l"
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
331 > EOF
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
332
33655
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
333 $ hg -R test-revflag push 'ssh://-oProxyCommand=touch${IFS}owned/path'
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
334 pushing to ssh://-oProxyCommand%3Dtouch%24%7BIFS%7Downed/path
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
335 abort: potentially unsafe url: 'ssh://-oProxyCommand=touch${IFS}owned/path'
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
336 [255]
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
337 $ hg -R test-revflag push 'ssh://%2DoProxyCommand=touch${IFS}owned/path'
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
338 pushing to ssh://-oProxyCommand%3Dtouch%24%7BIFS%7Downed/path
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
339 abort: potentially unsafe url: 'ssh://-oProxyCommand=touch${IFS}owned/path'
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
340 [255]
33660
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
341 $ hg -R test-revflag push 'ssh://fakehost|touch${IFS}owned/path'
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
342 pushing to ssh://fakehost%7Ctouch%24%7BIFS%7Downed/path
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
343 abort: no suitable response from remote hg!
33655
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
344 [255]
33660
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
345 $ hg -R test-revflag push 'ssh://fakehost%7Ctouch%20owned/path'
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
346 pushing to ssh://fakehost%7Ctouch%20owned/path
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
347 abort: no suitable response from remote hg!
33655
48d520fdf880 push: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 33138
diff changeset
348 [255]
33660
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
349
3fee7f7d2da0 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33655
diff changeset
350 $ [ ! -f owned ] || echo 'you got owned'