D2206: tests: test using both versions of SSH protocol
indygreg (Gregory Szorc)
phabricator at mercurial-scm.org
Wed Feb 14 21:05:39 EST 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG32ffa12b5c66: tests: test using both versions of SSH protocol (authored by indygreg, committed by ).
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D2206?vs=5575&id=5740
REVISION DETAIL
https://phab.mercurial-scm.org/D2206
AFFECTED FILES
tests/test-bundle2-exchange.t
tests/test-bundle2-pushback.t
tests/test-bundle2-remote-changegroup.t
tests/test-clone.t
tests/test-largefiles-wireproto.t
tests/test-pull.t
tests/test-ssh-bundle1.t
tests/test-ssh-clone-r.t
tests/test-ssh.t
CHANGE DETAILS
diff --git a/tests/test-ssh.t b/tests/test-ssh.t
--- a/tests/test-ssh.t
+++ b/tests/test-ssh.t
@@ -1,3 +1,12 @@
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
This test tries to exercise the ssh functionality with a dummy script
@@ -481,14 +490,16 @@
$ hg pull --debug ssh://user@dummy/remote --config devel.debug.peer-request=yes
pulling from ssh://user@dummy/remote
running .* ".*/dummyssh" ['"]user at dummy['"] ('|")hg -R remote serve --stdio('|") (re)
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
devel-peer-request: hello
sending hello command
devel-peer-request: between
devel-peer-request: pairs: 81 bytes
sending between command
- remote: 384
+ remote: 384 (sshv1 !)
+ protocol upgraded to exp-ssh-v2-0001 (sshv2 !)
remote: capabilities: lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,revlogv1 $USUAL_BUNDLE2_CAPS_SERVER$ unbundle=HG10GZ,HG10BZ,HG10UN
- remote: 1
+ remote: 1 (sshv1 !)
query 1; heads
devel-peer-request: batch
devel-peer-request: cmds: 141 bytes
diff --git a/tests/test-ssh-clone-r.t b/tests/test-ssh-clone-r.t
--- a/tests/test-ssh-clone-r.t
+++ b/tests/test-ssh-clone-r.t
@@ -1,5 +1,15 @@
This test tries to exercise the ssh functionality with a dummy script
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
creating 'remote' repo
$ hg init remote
diff --git a/tests/test-ssh-bundle1.t b/tests/test-ssh-bundle1.t
--- a/tests/test-ssh-bundle1.t
+++ b/tests/test-ssh-bundle1.t
@@ -1,6 +1,16 @@
This test is a duplicate of 'test-http.t' feel free to factor out
parts that are not bundle1/bundle2 specific.
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
$ cat << EOF >> $HGRCPATH
> [devel]
> # This test is dedicated to interaction through old bundle
@@ -465,11 +475,13 @@
$ hg pull --debug ssh://user@dummy/remote
pulling from ssh://user@dummy/remote
running .* ".*/dummyssh" ['"]user at dummy['"] ('|")hg -R remote serve --stdio('|") (re)
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
sending hello command
sending between command
- remote: 384
+ protocol upgraded to exp-ssh-v2-0001 (sshv2 !)
+ remote: 384 (sshv1 !)
remote: capabilities: lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,revlogv1 $USUAL_BUNDLE2_CAPS_SERVER$ unbundle=HG10GZ,HG10BZ,HG10UN
- remote: 1
+ remote: 1 (sshv1 !)
preparing listkeys for "bookmarks"
sending listkeys command
received listkey for "bookmarks": 45 bytes
diff --git a/tests/test-pull.t b/tests/test-pull.t
--- a/tests/test-pull.t
+++ b/tests/test-pull.t
@@ -1,5 +1,15 @@
#require serve
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
$ hg init test
$ cd test
diff --git a/tests/test-largefiles-wireproto.t b/tests/test-largefiles-wireproto.t
--- a/tests/test-largefiles-wireproto.t
+++ b/tests/test-largefiles-wireproto.t
@@ -1,3 +1,13 @@
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
This file contains testcases that tend to be related to the wire protocol part
of largefiles.
diff --git a/tests/test-clone.t b/tests/test-clone.t
--- a/tests/test-clone.t
+++ b/tests/test-clone.t
@@ -1,3 +1,13 @@
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
Prepare repo a:
$ hg init a
@@ -1142,33 +1152,38 @@
#if windows
$ hg clone "ssh://%26touch%20owned%20/" --debug
running sh -c "read l; read l; read l" "&touch owned " "hg -R . serve --stdio"
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg!
[255]
$ hg clone "ssh://example.com:%26touch%20owned%20/" --debug
running sh -c "read l; read l; read l" -p "&touch owned " example.com "hg -R . serve --stdio"
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg!
[255]
#else
$ hg clone "ssh://%3btouch%20owned%20/" --debug
running sh -c "read l; read l; read l" ';touch owned ' 'hg -R . serve --stdio'
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg!
[255]
$ hg clone "ssh://example.com:%3btouch%20owned%20/" --debug
running sh -c "read l; read l; read l" -p ';touch owned ' example.com 'hg -R . serve --stdio'
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg!
[255]
#endif
$ hg clone "ssh://v-alid.example.com/" --debug
running sh -c "read l; read l; read l" v-alid\.example\.com ['"]hg -R \. serve --stdio['"] (re)
+ sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg!
diff --git a/tests/test-bundle2-remote-changegroup.t b/tests/test-bundle2-remote-changegroup.t
--- a/tests/test-bundle2-remote-changegroup.t
+++ b/tests/test-bundle2-remote-changegroup.t
@@ -1,5 +1,15 @@
#require killdaemons
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
Create an extension to test bundle2 remote-changegroup parts
$ cat > bundle2.py << EOF
diff --git a/tests/test-bundle2-pushback.t b/tests/test-bundle2-pushback.t
--- a/tests/test-bundle2-pushback.t
+++ b/tests/test-bundle2-pushback.t
@@ -1,3 +1,13 @@
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
$ cat > bundle2.py << EOF
> """A small extension to test bundle2 pushback parts.
> Current bundle2 implementation doesn't provide a way to generate those
diff --git a/tests/test-bundle2-exchange.t b/tests/test-bundle2-exchange.t
--- a/tests/test-bundle2-exchange.t
+++ b/tests/test-bundle2-exchange.t
@@ -1,3 +1,13 @@
+#testcases sshv1 sshv2
+
+#if sshv2
+ $ cat >> $HGRCPATH << EOF
+ > [experimental]
+ > sshpeer.advertise-v2 = true
+ > sshserver.support-v2 = true
+ > EOF
+#endif
+
Test exchange of common information using bundle2
To: indygreg, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list