tests/test-pull.t
author Gregory Szorc <gregory.szorc@gmail.com>
Fri, 06 Apr 2018 22:39:58 -0700
changeset 37497 1541e1a8e87d
parent 36217 1ee1a42bfdae
child 37531 6639ac97ec3b
permissions -rw-r--r--
filelog: wrap revlog instead of inheriting it (API) The revlog base class exposes a ton of methods. Inheriting the revlog class for filelog will make it difficult to expose a clean interface. There will be abstraction violations. This commit breaks the inheritance of revlog by the filelog class. Filelog instances now contain a reference to a revlog instance. Various properties and methods are now proxied to that instance. There is precedence for doing this: manifestlog does something similar. Although, manifestlog has a cleaner interface than filelog. We'll get there with filelog... The new filelog class exposes a handful of extra properties and methods that aren't part of the declared filelog interface. Every extra item was added in order to get a test to pass. The set of tests that failed without these extra proxies has significant overlap with the set of tests that don't work with the simple store repo. There should be no surprise there. Hopefully the hardest part about this commit to review are the changes to bundlerepo and unionrepo. Both repository types define a custom revlog or revlog-like class and then have a custom filelog that inherits from both filelog and their custom revlog. This code has been changed so the filelog types don't inherit from revlog. Instead, they replace the revlog instance on the created filelog. This is super hacky. I plan to fix this in a future commit by parameterizing filelog.__init__. Because Python function call overhead is a thing, this change could impact performance by introducing a nearly empty proxy function for various methods and properties. I would gladly measure the performance impact of it, but I'm not sure what operations have tight loops over filelog attribute lookups or function calls. I know some of the DAG traversal code can be sensitive about the performance of e.g. parentrevs(). However, many of these functions are implemented on the revlog class and therefore have direct access to self.parentrevs() and aren't going through a proxy. .. api:: filelog.filelog is now a standalone class and doesn't inherit from revlog. Instead, it wraps a revlog instance at self._revlog. This change was made in an attempt to formalize storage APIs and prevent revlog implementation details leaking through to callers. Differential Revision: https://phab.mercurial-scm.org/D3154
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 17486
diff changeset
     1
#require serve
15446
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
     2
36217
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     3
#testcases sshv1 sshv2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     4
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     5
#if sshv2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     6
  $ cat >> $HGRCPATH << EOF
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     7
  > [experimental]
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     8
  > sshpeer.advertise-v2 = true
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     9
  > sshserver.support-v2 = true
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
    10
  > EOF
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
    11
#endif
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
    12
13956
ffb5c09ba822 tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents: 13826
diff changeset
    13
  $ hg init test
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    14
  $ cd test
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    15
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    16
  $ echo foo>foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    17
  $ hg addremove
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    18
  adding foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    19
  $ hg commit -m 1
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    20
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    21
  $ hg verify
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    22
  checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    23
  checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    24
  crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    25
  checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    26
  1 files, 1 changesets, 1 total revisions
336
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
    27
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    28
  $ hg serve -p $HGPORT -d --pid-file=hg.pid
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    29
  $ cat hg.pid >> $DAEMON_PIDS
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    30
  $ cd ..
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    31
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12328
diff changeset
    32
  $ hg clone --pull http://foo:bar@localhost:$HGPORT/ copy
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    33
  requesting all changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    34
  adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    35
  adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    36
  adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    37
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33644
diff changeset
    38
  new changesets 340e38bdcde4
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    39
  updating to branch default
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    40
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    41
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    42
  $ cd copy
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    43
  $ hg verify
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    44
  checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    45
  checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    46
  crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    47
  checking files
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    48
  1 files, 1 changesets, 1 total revisions
336
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
    49
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    50
  $ hg co
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    51
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    52
  $ cat foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    53
  foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    54
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    55
  $ hg manifest --debug
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    56
  2ed2a3912a0b24502043eae84ee4b279c18b90dd 644   foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    57
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12328
diff changeset
    58
  $ hg pull
15552
62c9183a0bbb clone: don't save user's password in .hg/hgrc (Issue3122)
Augie Fackler <durin42@gmail.com>
parents: 13956
diff changeset
    59
  pulling from http://foo@localhost:$HGPORT/
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    60
  searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    61
  no changes found
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    62
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12328
diff changeset
    63
  $ hg rollback --dry-run --verbose
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 12643
diff changeset
    64
  repository tip rolled back to revision -1 (undo pull: http://foo:***@localhost:$HGPORT/)
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    65
26604
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    66
Test pull of non-existing 20 character revision specification, making sure plain ascii identifiers
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    67
not are encoded like a node:
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    68
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    69
  $ hg pull -r 'xxxxxxxxxxxxxxxxxxxy'
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    70
  pulling from http://foo@localhost:$HGPORT/
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    71
  abort: unknown revision 'xxxxxxxxxxxxxxxxxxxy'!
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    72
  [255]
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    73
  $ hg pull -r 'xxxxxxxxxxxxxxxxxx y'
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    74
  pulling from http://foo@localhost:$HGPORT/
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    75
  abort: unknown revision '7878787878787878787878787878787878782079'!
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    76
  [255]
a3fcc8e3136b context: don't hex encode all unknown 20 char revision specs (issue4890)
Mads Kiilerich <madski@unity3d.com>
parents: 24205
diff changeset
    77
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12377
diff changeset
    78
Issue622: hg init && hg pull -u URL doesn't checkout default branch
4891
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
    79
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    80
  $ cd ..
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    81
  $ hg init empty
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    82
  $ cd empty
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    83
  $ hg pull -u ../test
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    84
  pulling from ../test
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    85
  requesting all changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    86
  adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    87
  adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    88
  adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    89
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 33644
diff changeset
    90
  new changesets 340e38bdcde4
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    91
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9996
2770d03ae49f handle file URIs correctly, according to RFC 2396 (issue1153)
Sune Foldager <cryo@cyanite.org>
parents: 5384
diff changeset
    92
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    93
Test 'file:' uri handling:
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    94
17486
73e3e368bd42 spelling: doesn't/does not
timeless@mozdev.org
parents: 16913
diff changeset
    95
  $ hg pull -q file://../test-does-not-exist
13823
ad179644750f hg: look up schemes using url.url
Brodie Rao <brodie@bitheap.org>
parents: 13817
diff changeset
    96
  abort: file:// URLs can only refer to localhost
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12279
diff changeset
    97
  [255]
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
    98
13826
e574207e3bcd url: refactor util.drop_scheme() and hg.localpath() into url.localpath()
Brodie Rao <brodie@bitheap.org>
parents: 13823
diff changeset
    99
  $ hg pull -q file://../test
e574207e3bcd url: refactor util.drop_scheme() and hg.localpath() into url.localpath()
Brodie Rao <brodie@bitheap.org>
parents: 13823
diff changeset
   100
  abort: file:// URLs can only refer to localhost
e574207e3bcd url: refactor util.drop_scheme() and hg.localpath() into url.localpath()
Brodie Rao <brodie@bitheap.org>
parents: 13823
diff changeset
   101
  [255]
e574207e3bcd url: refactor util.drop_scheme() and hg.localpath() into url.localpath()
Brodie Rao <brodie@bitheap.org>
parents: 13823
diff changeset
   102
31771
5e92ba77793c test-serve: disable unfixable tests on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 26604
diff changeset
   103
MSYS changes 'file:' into 'file;'
5e92ba77793c test-serve: disable unfixable tests on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 26604
diff changeset
   104
5e92ba77793c test-serve: disable unfixable tests on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 26604
diff changeset
   105
#if no-msys
24205
abcb1ee3b20a check-code: allow disabling msys path check
Matt Mackall <mpm@selenic.com>
parents: 22947
diff changeset
   106
  $ hg pull -q file:../test  # no-msys
31771
5e92ba77793c test-serve: disable unfixable tests on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 26604
diff changeset
   107
#endif
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
   108
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   109
It's tricky to make file:// URLs working on every platform with
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   110
regular shell commands.
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
   111
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22046
diff changeset
   112
  $ URL=`$PYTHON -c "import os; print 'file://foobar' + ('/' + os.getcwd().replace(os.sep, '/')).replace('//', '/') + '/../test'"`
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
   113
  $ hg pull -q "$URL"
13817
7f18bab2c0b0 url: abort on file:// URLs with non-localhost hosts
Brodie Rao <brodie@bitheap.org>
parents: 13446
diff changeset
   114
  abort: file:// URLs can only refer to localhost
7f18bab2c0b0 url: abort on file:// URLs with non-localhost hosts
Brodie Rao <brodie@bitheap.org>
parents: 13446
diff changeset
   115
  [255]
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 10886
diff changeset
   116
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22046
diff changeset
   117
  $ URL=`$PYTHON -c "import os; print 'file://localhost' + ('/' + os.getcwd().replace(os.sep, '/')).replace('//', '/') + '/../test'"`
13817
7f18bab2c0b0 url: abort on file:// URLs with non-localhost hosts
Brodie Rao <brodie@bitheap.org>
parents: 13446
diff changeset
   118
  $ hg pull -q "$URL"
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16107
diff changeset
   119
33638
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   120
SEC: check for unsafe ssh url
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   121
33644
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   122
  $ cat >> $HGRCPATH << EOF
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   123
  > [ui]
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   124
  > ssh = sh -c "read l; read l; read l"
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   125
  > EOF
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   126
33638
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   127
  $ hg pull 'ssh://-oProxyCommand=touch${IFS}owned/path'
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   128
  pulling from ssh://-oProxyCommand%3Dtouch%24%7BIFS%7Downed/path
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   129
  abort: potentially unsafe url: 'ssh://-oProxyCommand=touch${IFS}owned/path'
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   130
  [255]
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   131
  $ hg pull 'ssh://%2DoProxyCommand=touch${IFS}owned/path'
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   132
  pulling from ssh://-oProxyCommand%3Dtouch%24%7BIFS%7Downed/path
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   133
  abort: potentially unsafe url: 'ssh://-oProxyCommand=touch${IFS}owned/path'
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   134
  [255]
33644
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   135
  $ hg pull 'ssh://fakehost|touch${IFS}owned/path'
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   136
  pulling from ssh://fakehost%7Ctouch%24%7BIFS%7Downed/path
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   137
  abort: no suitable response from remote hg!
33638
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   138
  [255]
33644
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   139
  $ hg pull 'ssh://fakehost%7Ctouch%20owned/path'
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   140
  pulling from ssh://fakehost%7Ctouch%20owned/path
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   141
  abort: no suitable response from remote hg!
33638
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   142
  [255]
92b583e3e522 pull: add tests for unsafe ssh url (SEC)
Sean Farley <sean@farley.io>
parents: 31771
diff changeset
   143
33644
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   144
  $ [ ! -f owned ] || echo 'you got owned'
943c91326b23 ssh: unban the use of pipe character in user@host:port string
Yuya Nishihara <yuya@tcha.org>
parents: 33638
diff changeset
   145
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16107
diff changeset
   146
  $ cd ..