annotate tests/test-ssh.t @ 18234:a55b06885cda

branchmap: allow to use cache of subset Filtered repository are *subset* of unfiltered repository. This means that a filtered branchmap could be use to compute the unfiltered version. And filtered version happen to be subset of each other: - "all() - unserved()" is a subset of "all() - hidden()" - "all() - hidden()" is a subset of "all()" This means that branchmap with "unfiltered" filter can be used as a base for "hidden" branchmap that itself could be used as a base for unfiltered branchmap. unserved < hidden < None This changeset implements this mechanism. If the on disk branchcache is not valid we use the branchcache of the nearest subset as base instead of computing it from scratch. Such fallback can be cascaded multiple time is necessary. Note that both "hidden" and "unserved" set are a bit volatile. We will add more stable filtering in next changesets. This changeset enables collaboration between no filtering and "unserved" filtering. Fixing performance regression introduced by 47f00b0de337
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
date Mon, 07 Jan 2013 17:23:25 +0100
parents b32e55e6c3c7
children 7ca534f31a83
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
1
4291
35b2e02367a5 test-ssh: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3853
diff changeset
2
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
3 This test tries to exercise the ssh functionality with a dummy script
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
4
14185
eb297845f90b tests: fix test-ssh.t after 6bd9778ae749
Mads Kiilerich <mads@kiilerich.com>
parents: 14164
diff changeset
5 creating 'remote' repo
4298
58517f6eb1ad test-ssh: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4291
diff changeset
6
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
7 $ hg init remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
8 $ cd remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
9 $ echo this > foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
10 $ echo this > fooO
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
11 $ hg ci -A -m "init" foo fooO
14185
eb297845f90b tests: fix test-ssh.t after 6bd9778ae749
Mads Kiilerich <mads@kiilerich.com>
parents: 14164
diff changeset
12 $ cat <<EOF > .hg/hgrc
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
13 > [server]
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
14 > uncompressed = True
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
15 >
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
16 > [hooks]
17018
e7fdfc702d9f tests: consistently use printenv.py the same MSYS/Windows-compatible way
Mads Kiilerich <mads@kiilerich.com>
parents: 17015
diff changeset
17 > changegroup = python "$TESTDIR/printenv.py" changegroup-in-remote 0 ../dummylog
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
18 > EOF
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
19 $ cd ..
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
20
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
21 repo not found error
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
22
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
23 $ hg clone -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy/nonexistent local
16935
f635c476fa3f serve: lowercase "no repo here" message
Martin Geisler <mg@aragost.com>
parents: 16897
diff changeset
24 remote: abort: there is no Mercurial repository here (.hg not found)!
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
25 abort: no suitable response from remote hg!
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
26 [255]
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
27
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
28 non-existent absolute path
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
29
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
30 $ hg clone -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy//`pwd`/nonexistent local
16935
f635c476fa3f serve: lowercase "no repo here" message
Martin Geisler <mg@aragost.com>
parents: 16897
diff changeset
31 remote: abort: there is no Mercurial repository here (.hg not found)!
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
32 abort: no suitable response from remote hg!
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
33 [255]
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
34
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
35 clone remote via stream
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
36
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
37 $ hg clone -e "python \"$TESTDIR/dummyssh\"" --uncompressed ssh://user@dummy/remote local-stream
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
38 streaming all changes
12489
d039c4285092 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12414
diff changeset
39 4 files to transfer, 392 bytes of data
12773
98aaf58a1d7c test-ssh: handle very slow ssh transfer rate
timeless <timeless@gmail.com>
parents: 12642
diff changeset
40 transferred 392 bytes in * seconds (*/sec) (glob)
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
41 updating to branch default
12489
d039c4285092 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12414
diff changeset
42 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
43 $ cd local-stream
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
44 $ hg verify
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
45 checking changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
46 checking manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
47 crosschecking files in changesets and manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
48 checking files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
49 2 files, 1 changesets, 2 total revisions
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
50 $ cd ..
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
51
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
52 clone remote via pull
5978
7939c71f3132 sshrepo: be more careful while reading data
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4298
diff changeset
53
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
54 $ hg clone -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote local
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
55 requesting all changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
56 adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
57 adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
58 adding file changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
59 added 1 changesets with 2 changes to 2 files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
60 updating to branch default
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
61 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
62
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
63 verify
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
64
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
65 $ cd local
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
66 $ hg verify
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
67 checking changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
68 checking manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
69 crosschecking files in changesets and manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
70 checking files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
71 2 files, 1 changesets, 2 total revisions
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
72 $ echo '[hooks]' >> .hg/hgrc
17018
e7fdfc702d9f tests: consistently use printenv.py the same MSYS/Windows-compatible way
Mads Kiilerich <mads@kiilerich.com>
parents: 17015
diff changeset
73 $ echo "changegroup = python \"$TESTDIR/printenv.py\" changegroup-in-local 0 ../dummylog" >> .hg/hgrc
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
74
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
75 empty default pull
3275
7ae37d99d47e ssh: make the error message more clear, add a testcase
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3095
diff changeset
76
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
77 $ hg paths
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
78 default = ssh://user@dummy/remote
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
79 $ hg pull -e "python \"$TESTDIR/dummyssh\""
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
80 pulling from ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
81 searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
82 no changes found
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
83
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
84 local change
12409
0eaf7d32a5d8 test-ssh: test absolute paths in SSH URLs
Brodie Rao <brodie@bitheap.org>
parents: 12156
diff changeset
85
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
86 $ echo bleah > foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
87 $ hg ci -m "add"
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
88
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
89 updating rc
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
90
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
91 $ echo "default-push = ssh://user@dummy/remote" >> .hg/hgrc
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
92 $ echo "[ui]" >> .hg/hgrc
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
93 $ echo "ssh = python \"$TESTDIR/dummyssh\"" >> .hg/hgrc
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
94
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
95 find outgoing
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2439
diff changeset
96
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
97 $ hg out ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
98 comparing with ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
99 searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
100 changeset: 1:a28a9d1a809c
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
101 tag: tip
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
102 user: test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
103 date: Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
104 summary: add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
105
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
106
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
107 find incoming on the remote side
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
108
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
109 $ hg incoming -R ../remote -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy/local
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
110 comparing with ssh://user@dummy/local
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
111 searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
112 changeset: 1:a28a9d1a809c
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
113 tag: tip
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
114 user: test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
115 date: Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
116 summary: add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
117
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
118
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
119 find incoming on the remote side (using absolute path)
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
120
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
121 $ hg incoming -R ../remote -e "python \"$TESTDIR/dummyssh\"" "ssh://user@dummy/`pwd`"
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12587
diff changeset
122 comparing with ssh://user@dummy/$TESTTMP/local
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
123 searching for changes
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
124 changeset: 1:a28a9d1a809c
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
125 tag: tip
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
126 user: test
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
127 date: Thu Jan 01 00:00:00 1970 +0000
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
128 summary: add
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
129
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
130
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
131 push
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
132
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
133 $ hg push
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
134 pushing to ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
135 searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
136 remote: adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
137 remote: adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
138 remote: adding file changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
139 remote: added 1 changesets with 1 changes to 1 files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
140 $ cd ../remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
141
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
142 check remote tip
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
143
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
144 $ hg tip
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
145 changeset: 1:a28a9d1a809c
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
146 tag: tip
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
147 user: test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
148 date: Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
149 summary: add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
150
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
151 $ hg verify
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
152 checking changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
153 checking manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
154 crosschecking files in changesets and manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
155 checking files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
156 2 files, 2 changesets, 3 total revisions
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
157 $ hg cat -r tip foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
158 bleah
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
159 $ echo z > z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
160 $ hg ci -A -m z z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
161 created new head
1982
70ba0c86da8b Added test for incoming via ssh.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
162
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
163 test pushkeys and bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
164
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
165 $ cd ../local
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
166 $ hg debugpushkey --config ui.ssh="python \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote namespaces
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
167 bookmarks
15648
79cc89de5be1 phases: add basic pushkey support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15622
diff changeset
168 phases
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
169 namespaces
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
170 $ hg book foo -r 0
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
171 $ hg out -B
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
172 comparing with ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
173 searching for changed bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
174 foo 1160648e36ce
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
175 $ hg push -B foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
176 pushing to ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
177 searching for changes
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
178 no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
179 exporting bookmark foo
16038
dad96e752079 push: don't treat bookmark as a found change
Matt Mackall <mpm@selenic.com>
parents: 16023
diff changeset
180 [1]
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
181 $ hg debugpushkey --config ui.ssh="python \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote bookmarks
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
182 foo 1160648e36cec0054048a7edc4110c6f84fde594
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
183 $ hg book -f foo
13050
3790452d499b pushkey: use UTF-8
Matt Mackall <mpm@selenic.com>
parents: 12969
diff changeset
184 $ hg push --traceback
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
185 pushing to ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
186 searching for changes
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
187 no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
188 updating bookmark foo
16023
90f8b8dd0326 push: return 1 if no changes found (issue3228)
Matt Mackall <mpm@selenic.com>
parents: 15897
diff changeset
189 [1]
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
190 $ hg book -d foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
191 $ hg in -B
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
192 comparing with ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
193 searching for changed bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
194 foo a28a9d1a809c
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
195 $ hg book -f -r 0 foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
196 $ hg pull -B foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
197 pulling from ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
198 no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
199 updating bookmark foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
200 importing bookmark foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
201 $ hg book -d foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
202 $ hg push -B foo
13368
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
203 pushing to ssh://user@dummy/remote
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
204 searching for changes
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
205 no changes found
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
206 deleting remote bookmark foo
16038
dad96e752079 push: don't treat bookmark as a found change
Matt Mackall <mpm@selenic.com>
parents: 16023
diff changeset
207 [1]
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
208
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
209 a bad, evil hook that prints to stdout
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
210
14186
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
211 $ cat <<EOF > $TESTTMP/badhook
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
212 > import sys
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
213 > sys.stdout.write("KABOOM\n")
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
214 > EOF
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
215
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
216 $ echo '[hooks]' >> ../remote/.hg/hgrc
14186
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
217 $ echo "changegroup.stdout = python $TESTTMP/badhook" >> ../remote/.hg/hgrc
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
218 $ echo r > r
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
219 $ hg ci -A -m z r
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
220
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
221 push should succeed even though it has an unexpected response
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
222
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
223 $ hg push
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
224 pushing to ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
225 searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
226 note: unsynced remote changes!
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
227 remote: adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
228 remote: adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
229 remote: adding file changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
230 remote: added 1 changesets with 1 changes to 1 files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
231 remote: KABOOM
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
232 $ hg -R ../remote heads
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
233 changeset: 3:1383141674ec
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
234 tag: tip
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
235 parent: 1:a28a9d1a809c
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
236 user: test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
237 date: Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
238 summary: z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
239
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
240 changeset: 2:6c0482d977a3
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
241 parent: 0:1160648e36ce
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
242 user: test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
243 date: Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
244 summary: z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
245
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
246
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
247 clone bookmarks
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
248
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
249 $ hg -R ../remote bookmark test
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
250 $ hg -R ../remote bookmarks
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
251 * test 2:6c0482d977a3
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
252 $ hg clone -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote local-bookmarks
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
253 requesting all changes
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
254 adding changesets
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
255 adding manifests
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
256 adding file changes
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
257 added 4 changesets with 5 changes to 4 files (+1 heads)
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
258 updating to branch default
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
259 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
260 $ hg -R local-bookmarks bookmarks
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
261 test 2:6c0482d977a3
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
262
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
263 passwords in ssh urls are not supported
13755
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
264 (we use a glob here because different Python versions give different
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
265 results here)
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
266
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
267 $ hg push ssh://user:erroneouspwd@dummy/remote
13755
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
268 pushing to ssh://user:*@dummy/remote (glob)
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
269 abort: password in URL not supported!
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
270 [255]
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
271
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
272 $ cd ..
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
273
17015
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
274 hide outer repo
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
275 $ hg init
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
276
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
277 Test remote paths with spaces (issue2983):
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
278
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
279 $ hg init --ssh "python \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo"
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
280 $ touch "$TESTTMP/a repo/test"
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
281 $ hg -R 'a repo' commit -A -m "test"
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
282 adding test
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
283 $ hg -R 'a repo' tag tag
16541
bb3334806ace tests: quote dummyssh in a way that works on windows too
Mads Kiilerich <mads@kiilerich.com>
parents: 16540
diff changeset
284 $ hg id --ssh "python \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo"
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
285 73649e48688a
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
286
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
287 Test (non-)escaping of remote paths with spaces when cloning (issue3145):
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
288
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
289 $ hg clone --ssh "python \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo"
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
290 destination directory: a repo
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
291 abort: destination 'a repo' is not empty
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
292 [255]
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
293
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
294 Test hg-ssh using a helper script that will restore PYTHONPATH (which might
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
295 have been cleared by a hg.exe wrapper) and invoke hg-ssh with the right
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
296 parameters:
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
297
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
298 $ cat > ssh.sh << EOF
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
299 > userhost="\$1"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
300 > SSH_ORIGINAL_COMMAND="\$2"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
301 > export SSH_ORIGINAL_COMMAND
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
302 > PYTHONPATH="$PYTHONPATH"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
303 > export PYTHONPATH
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
304 > python "$TESTDIR/../contrib/hg-ssh" "$TESTTMP/a repo"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
305 > EOF
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
306
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
307 $ hg id --ssh "sh ssh.sh" "ssh://user@dummy/a repo"
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
308 73649e48688a
16606
19379226dc67 hg-ssh: use %s for printing paths in error messages
Mads Kiilerich <mads@kiilerich.com>
parents: 16541
diff changeset
309
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
310 $ hg id --ssh "sh ssh.sh" "ssh://user@dummy/a'repo"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
311 remote: Illegal repository "$TESTTMP/a'repo" (glob)
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
312 abort: no suitable response from remote hg!
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
313 [255]
16606
19379226dc67 hg-ssh: use %s for printing paths in error messages
Mads Kiilerich <mads@kiilerich.com>
parents: 16541
diff changeset
314
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
315 $ hg id --ssh "sh ssh.sh" --remotecmd hacking "ssh://user@dummy/a'repo"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
316 remote: Illegal command "hacking -R 'a'\''repo' serve --stdio"
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
317 abort: no suitable response from remote hg!
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
318 [255]
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
319
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
320 $ SSH_ORIGINAL_COMMAND="'hg' -R 'a'repo' serve --stdio" python "$TESTDIR/../contrib/hg-ssh"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
321 Illegal command "'hg' -R 'a'repo' serve --stdio": No closing quotation
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
322 [255]
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
323
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
324 Test hg-ssh in read-only mode:
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
325
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
326 $ cat > ssh.sh << EOF
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
327 > userhost="\$1"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
328 > SSH_ORIGINAL_COMMAND="\$2"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
329 > export SSH_ORIGINAL_COMMAND
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
330 > PYTHONPATH="$PYTHONPATH"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
331 > export PYTHONPATH
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
332 > python "$TESTDIR/../contrib/hg-ssh" --read-only "$TESTTMP/remote"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
333 > EOF
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
334
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
335 $ hg clone --ssh "sh ssh.sh" "ssh://user@dummy/$TESTTMP/remote" read-only-local
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
336 requesting all changes
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
337 adding changesets
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
338 adding manifests
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
339 adding file changes
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
340 added 4 changesets with 5 changes to 4 files (+1 heads)
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
341 updating to branch default
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
342 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
343
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
344 $ cd read-only-local
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
345 $ echo "baz" > bar
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
346 $ hg ci -A -m "unpushable commit" bar
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
347 $ hg push --ssh "sh ../ssh.sh"
16897
2774576dee4d tests/run-tests: avoid C:/ in arguments
Adrian Buehlmann <adrian@cadifra.com>
parents: 16836
diff changeset
348 pushing to ssh://user@dummy/*/remote (glob)
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
349 searching for changes
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
350 remote: Permission denied
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
351 remote: abort: prechangegroup.hg-ssh hook failed
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
352 remote: Permission denied
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
353 remote: abort: prepushkey.hg-ssh hook failed
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
354 abort: unexpected response: empty string
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
355 [255]
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
356
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
357 $ cd ..
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
358
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
359 $ cat dummylog
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
360 Got arguments 1:user@dummy 2:hg -R nonexistent serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
361 Got arguments 1:user@dummy 2:hg -R /$TESTTMP/nonexistent serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
362 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
363 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
364 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
365 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
366 Got arguments 1:user@dummy 2:hg -R local serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
367 Got arguments 1:user@dummy 2:hg -R $TESTTMP/local serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
368 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
16982
9c892c830a72 tests/printenv.py: eliminate trailing spaces on output
Adrian Buehlmann <adrian@cadifra.com>
parents: 16935
diff changeset
369 changegroup-in-remote hook: HG_NODE=a28a9d1a809cab7d4e2fde4bee738a9ede948b60 HG_SOURCE=serve HG_URL=remote:ssh:127.0.0.1
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
370 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
371 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
372 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
373 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
374 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
375 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
376 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
377 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
378 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
16982
9c892c830a72 tests/printenv.py: eliminate trailing spaces on output
Adrian Buehlmann <adrian@cadifra.com>
parents: 16935
diff changeset
379 changegroup-in-remote hook: HG_NODE=1383141674ec756a6056f6a9097618482fe0f4a6 HG_SOURCE=serve HG_URL=remote:ssh:127.0.0.1
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
380 Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
381 Got arguments 1:user@dummy 2:hg init 'a repo'
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
382 Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
383 Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
384 Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio