tests/test-ssh.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Sun, 10 Mar 2024 04:53:17 +0100
changeset 51553 2e8a88e5809f
parent 51202 dcaa2df1f688
permissions -rw-r--r--
branchcache: stop writing more branchcache file on disk than needed Before this change, we were unconditionally writing a branchmap file for the filter level passed to `update_disk`. This is actually counter productive if no update were needed for this filter level. In many case, the branch cache for a filter level is identical to its parent "subset" and it is better to simply keep the subset update and reuse it every time instead of having to do identical work for similar subset. So we change the `update_disk` method to only write a file when that filter level differ from its parent. This removes many cases where identical files were written, requiring multiple boring update in the test suite. The only notable changes is the change to `test-strip-branch-cache.t`, this case was checking a scenario that no longer reproduce the bug as writing less branchmap file result in less stalled cache on disk. Strictly speaking, we could create a more convoluted scenario that create a similar issue. However the next changeset would also cover that scenario so we directly updated that test case to a "no longer buggy" state.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
     1
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
     2
14185
eb297845f90b tests: fix test-ssh.t after 6bd9778ae749
Mads Kiilerich <mads@kiilerich.com>
parents: 14164
diff changeset
     3
creating 'remote' repo
4298
58517f6eb1ad test-ssh: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4291
diff changeset
     4
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
     5
  $ hg init remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
     6
  $ cd remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
     7
  $ echo this > foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
     8
  $ echo this > fooO
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
     9
  $ hg ci -A -m "init" foo fooO
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    10
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    11
insert a closed branch (issue4428)
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    12
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    13
  $ hg up null
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    14
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    15
  $ hg branch closed
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    16
  marked working directory as branch closed
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    17
  (branches are permanent and global, did you want a bookmark?)
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    18
  $ hg ci -mc0
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    19
  $ hg ci --close-branch -mc1
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    20
  $ hg up -q default
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    21
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    22
configure for serving
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    23
14185
eb297845f90b tests: fix test-ssh.t after 6bd9778ae749
Mads Kiilerich <mads@kiilerich.com>
parents: 14164
diff changeset
    24
  $ 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
    25
  > [server]
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    26
  > uncompressed = True
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    27
  > 
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    28
  > [hooks]
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
    29
  > changegroup = sh -c "printenv.py --line 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
    30
  > EOF
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
    31
  $ cd $TESTTMP
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    32
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    33
repo not found error
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    34
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
    35
  $ hg clone ssh://user@dummy/nonexistent local
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
    36
  remote: abort: repository nonexistent not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
    37
  abort: no suitable response from remote hg
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    38
  [255]
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
    39
  $ hg clone -q ssh://user@dummy/nonexistent local
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
    40
  remote: abort: repository nonexistent not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
    41
  abort: no suitable response from remote hg
44918
15e26cc0e2c6 sshpeer: add test showing that -q silences remote errors
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44618
diff changeset
    42
  [255]
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    43
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    44
non-existent absolute path
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    45
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
    46
  $ hg clone ssh://user@dummy/`pwd`/nonexistent local
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
    47
  remote: abort: repository $TESTTMP/nonexistent not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
    48
  abort: no suitable response from remote hg
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    49
  [255]
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    50
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    51
clone remote via stream
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    52
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    53
#if no-reposimplestore
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    54
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
    55
  $ hg clone --stream ssh://user@dummy/remote local-stream
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    56
  streaming all changes
51202
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50836
diff changeset
    57
  9 files to transfer, 827 bytes of data (no-zstd !)
46874
84a93fa7ecfd revlog-compression: use zstd by default (if available)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46750
diff changeset
    58
  transferred 827 bytes in * seconds (*) (glob) (no-zstd !)
51202
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50836
diff changeset
    59
  9 files to transfer, 846 bytes of data (zstd no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50836
diff changeset
    60
  11 files to transfer, 972 bytes of data (zstd rust !)
46874
84a93fa7ecfd revlog-compression: use zstd by default (if available)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46750
diff changeset
    61
  transferred * bytes in * seconds (* */sec) (glob) (zstd !)
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    62
  updating to branch default
12489
d039c4285092 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12414
diff changeset
    63
  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
    64
  $ cd local-stream
49920
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49716
diff changeset
    65
  $ hg verify -q
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    66
  $ hg branches
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    67
  default                        0:1160648e36ce
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
    68
  $ cd $TESTTMP
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    69
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    70
clone bookmarks via stream
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    71
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    72
  $ hg -R local-stream book mybook
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
    73
  $ hg clone --stream ssh://user@dummy/local-stream stream2
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    74
  streaming all changes
51553
2e8a88e5809f branchcache: stop writing more branchcache file on disk than needed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51202
diff changeset
    75
  12 files to transfer, * of data (glob) (no-rust !)
2e8a88e5809f branchcache: stop writing more branchcache file on disk than needed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51202
diff changeset
    76
  14 files to transfer, * of data (glob) (rust !)
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46086
diff changeset
    77
  transferred * in * seconds (*) (glob)
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    78
  updating to branch default
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    79
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    80
  $ cd stream2
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    81
  $ hg book
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    82
     mybook                    0:1160648e36ce
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
    83
  $ cd $TESTTMP
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    84
  $ rm -rf local-stream stream2
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    85
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    86
#endif
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    87
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    88
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
    89
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
    90
  $ hg clone ssh://user@dummy/remote local
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    91
  requesting all changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    92
  adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    93
  adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    94
  adding file changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    95
  added 3 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34394
diff changeset
    96
  new changesets 1160648e36ce:ad076bfb429d
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    97
  updating to branch default
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    98
  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
    99
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   100
verify
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   101
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   102
  $ cd local
49920
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49716
diff changeset
   103
  $ hg verify -q
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   104
  $ cat >> .hg/hgrc <<EOF
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   105
  > [hooks]
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   106
  > changegroup = sh -c "printenv.py changegroup-in-local 0 ../dummylog"
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   107
  > EOF
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   108
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   109
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
   110
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   111
  $ hg paths
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   112
  default = ssh://user@dummy/remote
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   113
  $ hg pull
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   114
  pulling from ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   115
  searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   116
  no changes found
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   117
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   118
pull from wrong ssh URL
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   119
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   120
  $ hg pull ssh://user@dummy/doesnotexist
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   121
  pulling from ssh://user@dummy/doesnotexist
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   122
  remote: abort: repository doesnotexist not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   123
  abort: no suitable response from remote hg
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   124
  [255]
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   125
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   126
local change
12409
0eaf7d32a5d8 test-ssh: test absolute paths in SSH URLs
Brodie Rao <brodie@bitheap.org>
parents: 12156
diff changeset
   127
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   128
  $ echo bleah > foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   129
  $ hg ci -m "add"
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   130
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   131
updating rc
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   132
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   133
  $ echo "default-push = ssh://user@dummy/remote" >> .hg/hgrc
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   134
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   135
find outgoing
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2439
diff changeset
   136
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   137
  $ hg out ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   138
  comparing with ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   139
  searching for changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   140
  changeset:   3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   141
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   142
  parent:      0:1160648e36ce
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   143
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   144
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   145
  summary:     add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   146
  
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   147
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   148
find incoming on the remote side
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   149
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   150
  $ hg incoming -R ../remote ssh://user@dummy/local
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   151
  comparing with ssh://user@dummy/local
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   152
  searching for changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   153
  changeset:   3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   154
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   155
  parent:      0:1160648e36ce
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   156
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   157
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   158
  summary:     add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   159
  
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   160
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   161
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
   162
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   163
  $ hg incoming -R ../remote "ssh://user@dummy/`pwd`"
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12587
diff changeset
   164
  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
   165
  searching for changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   166
  changeset:   3:a28a9d1a809c
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   167
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   168
  parent:      0:1160648e36ce
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   169
  user:        test
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   170
  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
   171
  summary:     add
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   172
  
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   173
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   174
push
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   175
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   176
  $ hg push
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   177
  pushing to ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   178
  searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   179
  remote: adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   180
  remote: adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   181
  remote: adding file changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   182
  remote: added 1 changesets with 1 changes to 1 files
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   183
  $ cd $TESTTMP/remote
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   184
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   185
check remote tip
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   186
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   187
  $ hg tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   188
  changeset:   3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   189
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   190
  parent:      0:1160648e36ce
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   191
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   192
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   193
  summary:     add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   194
  
49920
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 49716
diff changeset
   195
  $ hg verify -q
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   196
  $ hg cat -r tip foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   197
  bleah
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   198
  $ echo z > z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   199
  $ hg ci -A -m z z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   200
  created new head
1982
70ba0c86da8b Added test for incoming via ssh.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
   201
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   202
test pushkeys and bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   203
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   204
  $ cd $TESTTMP/local
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   205
  $ hg debugpushkey 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
   206
  bookmarks	
18255
7ca534f31a83 debugpushkey: list keys sorted
Mads Kiilerich <mads at kiilerich.com>
parents: 17844
diff changeset
   207
  namespaces	
15648
79cc89de5be1 phases: add basic pushkey support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15622
diff changeset
   208
  phases	
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   209
  $ hg book foo -r 0
38203
dfb888aae17a outgoing: pay attention to `default:pushurl` for bookmarks and subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 38141
diff changeset
   210
  $ hg out -B --config paths.default=bogus://invalid --config paths.default:pushurl=`hg paths default`
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   211
  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
   212
  searching for changed bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   213
     foo                       1160648e36ce
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   214
  $ hg push -B foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   215
  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
   216
  searching for changes
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   217
  no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   218
  exporting bookmark foo
16038
dad96e752079 push: don't treat bookmark as a found change
Matt Mackall <mpm@selenic.com>
parents: 16023
diff changeset
   219
  [1]
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   220
  $ hg debugpushkey 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
   221
  foo	1160648e36cec0054048a7edc4110c6f84fde594
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   222
  $ hg book -f foo
13050
3790452d499b pushkey: use UTF-8
Matt Mackall <mpm@selenic.com>
parents: 12969
diff changeset
   223
  $ hg push --traceback
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   224
  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
   225
  searching for changes
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   226
  no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   227
  updating bookmark foo
16023
90f8b8dd0326 push: return 1 if no changes found (issue3228)
Matt Mackall <mpm@selenic.com>
parents: 15897
diff changeset
   228
  [1]
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   229
  $ hg book -d foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   230
  $ hg in -B
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   231
  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
   232
  searching for changed bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   233
     foo                       a28a9d1a809c
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   234
  $ 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
   235
  $ hg pull -B foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   236
  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
   237
  no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   238
  updating bookmark foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   239
  $ hg book -d foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   240
  $ hg push -B foo
13368
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
   241
  pushing to ssh://user@dummy/remote
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
   242
  searching for changes
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
   243
  no changes found
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   244
  deleting remote bookmark foo
16038
dad96e752079 push: don't treat bookmark as a found change
Matt Mackall <mpm@selenic.com>
parents: 16023
diff changeset
   245
  [1]
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   246
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   247
a bad, evil hook that prints to stdout
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   248
14186
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   249
  $ cat <<EOF > $TESTTMP/badhook
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   250
  > import sys
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   251
  > sys.stdout.write("KABOOM\n")
37987
45a669bad421 test-ssh: add some flush() to make output deterministic
Yuya Nishihara <yuya@tcha.org>
parents: 37813
diff changeset
   252
  > sys.stdout.flush()
14186
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   253
  > EOF
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   254
30374
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   255
  $ cat <<EOF > $TESTTMP/badpyhook.py
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   256
  > import sys
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   257
  > def hook(ui, repo, hooktype, **kwargs):
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   258
  >     sys.stdout.write("KABOOM IN PROCESS\n")
37987
45a669bad421 test-ssh: add some flush() to make output deterministic
Yuya Nishihara <yuya@tcha.org>
parents: 37813
diff changeset
   259
  >     sys.stdout.flush()
30374
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   260
  > EOF
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   261
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   262
  $ cat <<EOF >> ../remote/.hg/hgrc
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   263
  > [hooks]
39723
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39506
diff changeset
   264
  > changegroup.stdout = "$PYTHON" $TESTTMP/badhook
30374
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   265
  > changegroup.pystdout = python:$TESTTMP/badpyhook.py:hook
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   266
  > EOF
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   267
  $ echo r > r
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   268
  $ hg ci -A -m z r
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   269
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   270
push should succeed even though it has an unexpected response
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   271
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   272
  $ hg push
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   273
  pushing to ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   274
  searching for changes
20501
8a9e0b523d2d discovery: improve "note: unsynced remote changes!" warning
Mads Kiilerich <madski@unity3d.com>
parents: 20403
diff changeset
   275
  remote has heads on branch 'default' that are not known locally: 6c0482d977a3
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   276
  remote: adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   277
  remote: adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   278
  remote: adding file changes
49956
950c39918bd2 tests: drop `(py3 !)` output matching predicates
Matt Harbison <matt_harbison@yahoo.com>
parents: 49920
diff changeset
   279
  remote: added 1 changesets with 1 changes to 1 files
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   280
  remote: KABOOM
30374
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   281
  remote: KABOOM IN PROCESS
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   282
  $ hg -R ../remote heads
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   283
  changeset:   5:1383141674ec
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   284
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   285
  parent:      3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   286
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   287
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   288
  summary:     z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   289
  
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   290
  changeset:   4:6c0482d977a3
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   291
  parent:      0:1160648e36ce
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   292
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   293
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   294
  summary:     z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   295
  
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   296
38798
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   297
#if chg
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   298
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   299
try again with remote chg, which should succeed as well
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   300
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   301
  $ hg rollback -R ../remote
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   302
  repository tip rolled back to revision 4 (undo serve)
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   303
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   304
  $ hg push --config ui.remotecmd=chg
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   305
  pushing to ssh://user@dummy/remote
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   306
  searching for changes
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   307
  remote has heads on branch 'default' that are not known locally: 6c0482d977a3
38799
e5724be689b3 procutil: compare fd number to see if stdio protection is needed (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 38798
diff changeset
   308
  remote: adding changesets
e5724be689b3 procutil: compare fd number to see if stdio protection is needed (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 38798
diff changeset
   309
  remote: adding manifests
e5724be689b3 procutil: compare fd number to see if stdio protection is needed (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 38798
diff changeset
   310
  remote: adding file changes
49956
950c39918bd2 tests: drop `(py3 !)` output matching predicates
Matt Harbison <matt_harbison@yahoo.com>
parents: 49920
diff changeset
   311
  remote: added 1 changesets with 1 changes to 1 files
38801
23a00bc90a3c chgserver: do not send system() back to client if stdio redirected (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 38799
diff changeset
   312
  remote: KABOOM
23a00bc90a3c chgserver: do not send system() back to client if stdio redirected (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 38799
diff changeset
   313
  remote: KABOOM IN PROCESS
38798
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   314
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   315
#endif
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   316
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   317
clone bookmarks
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   318
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   319
  $ hg -R ../remote bookmark test
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   320
  $ hg -R ../remote bookmarks
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   321
   * test                      4:6c0482d977a3
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   322
  $ hg clone ssh://user@dummy/remote local-bookmarks
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   323
  requesting all changes
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   324
  adding changesets
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   325
  adding manifests
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   326
  adding file changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   327
  added 6 changesets with 5 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: 34394
diff changeset
   328
  new changesets 1160648e36ce:1383141674ec
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   329
  updating to branch default
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   330
  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
   331
  $ hg -R local-bookmarks bookmarks
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   332
     test                      4:6c0482d977a3
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   333
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   334
passwords in ssh urls are not supported
13755
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
   335
(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
   336
results here)
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   337
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   338
  $ hg push ssh://user:erroneouspwd@dummy/remote
13755
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
   339
  pushing to ssh://user:*@dummy/remote (glob)
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   340
  abort: password in URL not supported
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   341
  [255]
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   342
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   343
  $ cd $TESTTMP
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   344
17015
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
   345
hide outer repo
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
   346
  $ hg init
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
   347
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   348
Test remote paths with spaces (issue2983):
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   349
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   350
  $ hg init "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
   351
  $ touch "$TESTTMP/a repo/test"
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
   352
  $ 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
   353
  adding test
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   354
  $ hg -R 'a repo' tag tag
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   355
  $ hg id "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
   356
  73649e48688a
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   357
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   358
  $ hg id "ssh://user@dummy/a repo#noNoNO"
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   359
  abort: unknown revision 'noNoNO'
21188
d36440d84328 httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa
Mads Kiilerich <madski@unity3d.com>
parents: 20501
diff changeset
   360
  [255]
d36440d84328 httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa
Mads Kiilerich <madski@unity3d.com>
parents: 20501
diff changeset
   361
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   362
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
   363
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   364
  $ hg clone "ssh://user@dummy/a repo"
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   365
  destination directory: a repo
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   366
  abort: destination 'a repo' is not empty
45866
d68618954ade errors: use InputError for some errors on `hg clone`
Martin von Zweigbergk <martinvonz@google.com>
parents: 44919
diff changeset
   367
  [10]
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   368
46750
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   369
#if no-rhg
32050
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   370
Make sure hg is really paranoid in serve --stdio mode. It used to be
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   371
possible to get a debugger REPL by specifying a repo named --debugger.
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   372
  $ hg -R --debugger serve --stdio
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   373
  abort: potentially unsafe serve --stdio invocation: ['-R', '--debugger', 'serve', '--stdio']
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   374
  [255]
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   375
  $ hg -R --config=ui.debugger=yes serve --stdio
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   376
  abort: potentially unsafe serve --stdio invocation: ['-R', '--config=ui.debugger=yes', 'serve', '--stdio']
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   377
  [255]
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   378
Abbreviations of 'serve' also don't work, to avoid shenanigans.
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   379
  $ hg -R narf serv --stdio
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   380
  abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio']
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   381
  [255]
46750
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   382
#else
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   383
rhg aborts early on -R without a repository at that path
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   384
  $ hg -R --debugger serve --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   385
  abort: potentially unsafe serve --stdio invocation: ['-R', '--debugger', 'serve', '--stdio'] (missing-correct-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   386
  abort: repository --debugger not found (known-bad-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   387
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   388
  $ hg -R --config=ui.debugger=yes serve --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   389
  abort: potentially unsafe serve --stdio invocation: ['-R', '--config=ui.debugger=yes', 'serve', '--stdio'] (missing-correct-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   390
  abort: repository --config=ui.debugger=yes not found (known-bad-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   391
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   392
  $ hg -R narf serv --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   393
  abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio'] (missing-correct-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   394
  abort: repository narf not found (known-bad-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   395
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   396
If the repo does exist, rhg finds an unsupported command and falls back to Python
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   397
which still does the right thing
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   398
  $ hg init narf
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   399
  $ hg -R narf serv --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   400
  abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio']
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   401
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46672
diff changeset
   402
#endif
32050
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30876
diff changeset
   403
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   404
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
   405
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
   406
parameters:
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   407
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   408
  $ 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
   409
  > 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
   410
  > 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
   411
  > 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
   412
  > 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
   413
  > export PYTHONPATH
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   414
  > "$PYTHON" "$TESTDIR/../contrib/hg-ssh" "$TESTTMP/a repo"
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   415
  > EOF
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   416
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   417
  $ 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
   418
  73649e48688a
16606
19379226dc67 hg-ssh: use %s for printing paths in error messages
Mads Kiilerich <mads@kiilerich.com>
parents: 16541
diff changeset
   419
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   420
  $ hg id --ssh "sh ssh.sh" "ssh://user@dummy/a'repo"
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35277
diff changeset
   421
  remote: Illegal repository "$TESTTMP/a'repo"
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   422
  abort: no suitable response from remote hg
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   423
  [255]
16606
19379226dc67 hg-ssh: use %s for printing paths in error messages
Mads Kiilerich <mads@kiilerich.com>
parents: 16541
diff changeset
   424
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   425
  $ 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
   426
  remote: Illegal command "hacking -R 'a'\''repo' serve --stdio"
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   427
  abort: no suitable response from remote hg
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   428
  [255]
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   429
39723
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39506
diff changeset
   430
  $ SSH_ORIGINAL_COMMAND="'hg' -R 'a'repo' serve --stdio" "$PYTHON" "$TESTDIR/../contrib/hg-ssh"
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   431
  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
   432
  [255]
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   433
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   434
Test hg-ssh in read-only mode:
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   435
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   436
  $ cat > ssh.sh << EOF
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   437
  > userhost="\$1"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   438
  > SSH_ORIGINAL_COMMAND="\$2"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   439
  > export SSH_ORIGINAL_COMMAND
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   440
  > PYTHONPATH="$PYTHONPATH"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   441
  > export PYTHONPATH
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   442
  > "$PYTHON" "$TESTDIR/../contrib/hg-ssh" --read-only "$TESTTMP/remote"
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   443
  > EOF
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   444
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   445
  $ 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
   446
  requesting all changes
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   447
  adding changesets
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   448
  adding manifests
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   449
  adding file changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   450
  added 6 changesets with 5 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: 34394
diff changeset
   451
  new changesets 1160648e36ce:1383141674ec
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   452
  updating to branch default
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   453
  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
   454
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   455
  $ cd read-only-local
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   456
  $ echo "baz" > bar
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   457
  $ hg ci -A -m "unpushable commit" bar
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   458
  $ hg push --ssh "sh ../ssh.sh"
16897
2774576dee4d tests/run-tests: avoid C:/ in arguments
Adrian Buehlmann <adrian@cadifra.com>
parents: 16836
diff changeset
   459
  pushing to ssh://user@dummy/*/remote (glob)
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   460
  searching for changes
50292
adecb1ab4a0d tests: add a rewriting step to detect EACCES errors
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 49956
diff changeset
   461
  remote: $EACCES$
26829
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   462
  remote: pretxnopen.hg-ssh hook failed
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   463
  abort: push failed on remote
46977
3f87d2af0bd6 errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents: 46884
diff changeset
   464
  [100]
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   465
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   466
  $ cd $TESTTMP
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   467
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   468
stderr from remote commands should be printed before stdout from local code (issue4336)
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   469
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   470
  $ hg clone remote stderr-ordering
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   471
  updating to branch default
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   472
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   473
  $ cd stderr-ordering
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   474
  $ cat >> localwrite.py << EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   475
  > from mercurial import exchange, extensions
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   476
  > 
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   477
  > def wrappedpush(orig, repo, *args, **kwargs):
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   478
  >     res = orig(repo, *args, **kwargs)
38141
e69628f36196 py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37987
diff changeset
   479
  >     repo.ui.write(b'local stdout\n')
37987
45a669bad421 test-ssh: add some flush() to make output deterministic
Yuya Nishihara <yuya@tcha.org>
parents: 37813
diff changeset
   480
  >     repo.ui.flush()
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   481
  >     return res
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   482
  > 
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   483
  > def extsetup(ui):
50836
02eae2df911a wrapfunction: use sysstr instead of bytes as argument in various tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50436
diff changeset
   484
  >     extensions.wrapfunction(exchange, 'push', wrappedpush)
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   485
  > EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   486
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   487
  $ cat >> .hg/hgrc << EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   488
  > [paths]
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   489
  > default-push = ssh://user@dummy/remote
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   490
  > [extensions]
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   491
  > localwrite = localwrite.py
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   492
  > EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   493
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   494
  $ echo localwrite > foo
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   495
  $ hg commit -m 'testing localwrite'
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   496
  $ hg push
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   497
  pushing to ssh://user@dummy/remote
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   498
  searching for changes
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   499
  remote: adding changesets
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   500
  remote: adding manifests
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   501
  remote: adding file changes
49956
950c39918bd2 tests: drop `(py3 !)` output matching predicates
Matt Harbison <matt_harbison@yahoo.com>
parents: 49920
diff changeset
   502
  remote: added 1 changesets with 1 changes to 1 files
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   503
  remote: KABOOM
30374
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   504
  remote: KABOOM IN PROCESS
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   505
  local stdout
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   506
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   507
debug output
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   508
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   509
  $ hg pull --debug ssh://user@dummy/remote --config devel.debug.peer-request=yes
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   510
  pulling from ssh://user@dummy/remote
47950
a28a7dcb9158 tests: setup dummyssh as the default ssh
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47588
diff changeset
   511
  running .* ".*[/\\]dummyssh" ['"]user@dummy['"] ['"]hg -R remote serve --stdio['"] (re)
37813
58bbd14b0c62 sshpeer: reflect actual command activity one handshake
Boris Feld <boris.feld@octobus.net>
parents: 37413
diff changeset
   512
  devel-peer-request: hello+between
58bbd14b0c62 sshpeer: reflect actual command activity one handshake
Boris Feld <boris.feld@octobus.net>
parents: 37413
diff changeset
   513
  devel-peer-request:   pairs: 81 bytes
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   514
  sending hello command
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   515
  sending between command
48671
a746d13987a6 stream-requirements: smoother matching in test-ssh-proto.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48561
diff changeset
   516
  remote: \d+ (re)
a746d13987a6 stream-requirements: smoother matching in test-ssh-proto.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48561
diff changeset
   517
  remote: capabilities: batch branchmap \$USUAL_BUNDLE2_CAPS\$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=[^ ,]+(,[^ ,]+)* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (re)
48561
04688c51f81f exchangev2: remove it
Raphaël Gomès <rgomes@octobus.net>
parents: 47952
diff changeset
   518
  remote: 1
37393
afcfdf53e4b5 wireproto: provide accessors for client capabilities
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
   519
  devel-peer-request: protocaps
afcfdf53e4b5 wireproto: provide accessors for client capabilities
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
   520
  devel-peer-request:   caps: * bytes (glob)
afcfdf53e4b5 wireproto: provide accessors for client capabilities
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
   521
  sending protocaps command
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   522
  query 1; heads
36951
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36641
diff changeset
   523
  devel-peer-request: batched-content
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36641
diff changeset
   524
  devel-peer-request:    - heads (0 arguments)
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36641
diff changeset
   525
  devel-peer-request:    - known (1 arguments)
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   526
  devel-peer-request: batch
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   527
  devel-peer-request:   cmds: 141 bytes
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   528
  sending batch command
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   529
  searching for changes
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   530
  all remote heads known locally
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   531
  no changes found
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   532
  devel-peer-request: getbundle
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   533
  devel-peer-request:   bookmarks: 1 bytes
50415
2cf264e9aa75 configitems: enable changegroup3 by default (unless using infinitepush)
Matt Harbison <matt_harbison@yahoo.com>
parents: 49956
diff changeset
   534
  devel-peer-request:   bundlecaps: 275 bytes
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   535
  devel-peer-request:   cg: 1 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   536
  devel-peer-request:   common: 122 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   537
  devel-peer-request:   heads: 122 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   538
  devel-peer-request:   listkeys: 9 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35488
diff changeset
   539
  devel-peer-request:   phases: 1 bytes
25376
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   540
  sending getbundle command
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   541
  bundle2-input-bundle: with-transaction
35277
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   542
  bundle2-input-part: "bookmarks" supported
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   543
  bundle2-input-part: total payload size 26
25376
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   544
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   545
  bundle2-input-part: total payload size 45
34329
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 33657
diff changeset
   546
  bundle2-input-part: "phase-heads" supported
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 33657
diff changeset
   547
  bundle2-input-part: total payload size 72
42935
181ee2118a96 bundle2: fix an off-by-one in debug message of number of parts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42903
diff changeset
   548
  bundle2-input-bundle: 3 parts total
25376
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   549
  checking for updated bookmarks
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   550
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   551
  $ cd $TESTTMP
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   552
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   553
  $ cat dummylog
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   554
  Got arguments 1:user@dummy 2:hg -R nonexistent serve --stdio
44918
15e26cc0e2c6 sshpeer: add test showing that -q silences remote errors
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44618
diff changeset
   555
  Got arguments 1:user@dummy 2:hg -R nonexistent serve --stdio
26141
fa6ba7c9600b test-ssh: remove superfluous triple slashes from absolute path test
Yuya Nishihara <yuya@tcha.org>
parents: 25495
diff changeset
   556
  Got arguments 1:user@dummy 2:hg -R $TESTTMP/nonexistent serve --stdio
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   557
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   558
  Got arguments 1:user@dummy 2:hg -R local-stream serve --stdio (no-reposimplestore !)
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   559
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio (no-reposimplestore !)
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   560
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio (no-reposimplestore !)
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   561
  Got arguments 1:user@dummy 2:hg -R doesnotexist serve --stdio
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   562
  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
   563
  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
   564
  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
   565
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   566
  changegroup-in-remote hook: HG_BUNDLE2=1
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   567
  HG_HOOKNAME=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   568
  HG_HOOKTYPE=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   569
  HG_NODE=a28a9d1a809cab7d4e2fde4bee738a9ede948b60
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   570
  HG_NODE_LAST=a28a9d1a809cab7d4e2fde4bee738a9ede948b60
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   571
  HG_SOURCE=serve
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   572
  HG_TXNID=TXN:$ID$
41901
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41655
diff changeset
   573
  HG_TXNNAME=serve
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   574
  HG_URL=remote:ssh:$LOCALIP
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   575
  
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   576
  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
   577
  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
   578
  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
   579
  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
   580
  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
   581
  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
   582
  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
   583
  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
   584
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   585
  changegroup-in-remote hook: HG_BUNDLE2=1
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   586
  HG_HOOKNAME=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   587
  HG_HOOKTYPE=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   588
  HG_NODE=1383141674ec756a6056f6a9097618482fe0f4a6
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   589
  HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   590
  HG_SOURCE=serve
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   591
  HG_TXNID=TXN:$ID$
41901
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41655
diff changeset
   592
  HG_TXNNAME=serve
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   593
  HG_URL=remote:ssh:$LOCALIP
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   594
  
38798
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38203
diff changeset
   595
  Got arguments 1:user@dummy 2:chg -R remote serve --stdio (chg !)
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   596
  changegroup-in-remote hook: HG_BUNDLE2=1 (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   597
  HG_HOOKNAME=changegroup (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   598
  HG_HOOKTYPE=changegroup (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   599
  HG_NODE=1383141674ec756a6056f6a9097618482fe0f4a6 (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   600
  HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6 (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   601
  HG_SOURCE=serve (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   602
  HG_TXNID=TXN:$ID$ (chg !)
41901
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41655
diff changeset
   603
  HG_TXNNAME=serve (chg !)
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   604
  HG_URL=remote:ssh:$LOCALIP (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   605
   (chg !)
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   606
  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
   607
  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
   608
  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
   609
  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
   610
  Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
21188
d36440d84328 httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa
Mads Kiilerich <madski@unity3d.com>
parents: 20501
diff changeset
   611
  Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   612
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   613
  changegroup-in-remote hook: HG_BUNDLE2=1
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   614
  HG_HOOKNAME=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   615
  HG_HOOKTYPE=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   616
  HG_NODE=65c38f4125f9602c8db4af56530cc221d93b8ef8
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   617
  HG_NODE_LAST=65c38f4125f9602c8db4af56530cc221d93b8ef8
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   618
  HG_SOURCE=serve
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   619
  HG_TXNID=TXN:$ID$
41901
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41655
diff changeset
   620
  HG_TXNNAME=serve
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   621
  HG_URL=remote:ssh:$LOCALIP
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   622
  
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   623
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   624
41655
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40937
diff changeset
   625
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   626
remote hook failure is attributed to remote
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   627
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   628
  $ cat > $TESTTMP/failhook << EOF
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   629
  > def hook(ui, repo, **kwargs):
38141
e69628f36196 py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37987
diff changeset
   630
  >     ui.write(b'hook failure!\n')
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   631
  >     ui.flush()
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   632
  >     return 1
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   633
  > EOF
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   634
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   635
  $ echo "pretxnchangegroup.fail = python:$TESTTMP/failhook:hook" >> remote/.hg/hgrc
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   636
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   637
  $ hg -q clone ssh://user@dummy/remote hookout
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   638
  $ cd hookout
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   639
  $ touch hookfailure
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   640
  $ hg -q commit -A -m 'remote hook failure'
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   641
  $ hg push
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   642
  pushing to ssh://user@dummy/remote
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   643
  searching for changes
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   644
  remote: adding changesets
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   645
  remote: adding manifests
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   646
  remote: adding file changes
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   647
  remote: hook failure!
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   648
  remote: transaction abort!
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   649
  remote: rollback completed
26829
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   650
  remote: pretxnchangegroup.fail hook failed
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   651
  abort: push failed on remote
46977
3f87d2af0bd6 errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents: 46884
diff changeset
   652
  [100]
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   653
30876
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   654
abort during pull is properly reported as such
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   655
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   656
  $ echo morefoo >> ../remote/foo
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   657
  $ hg -R ../remote commit --message "more foo to be pulled"
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   658
  $ cat >> ../remote/.hg/hgrc << EOF
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   659
  > [extensions]
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   660
  > crash = ${TESTDIR}/crashgetbundler.py
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   661
  > EOF
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   662
  $ hg pull
30876
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   663
  pulling from ssh://user@dummy/remote
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   664
  searching for changes
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   665
  remote: abort: this is an exercise
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30568
diff changeset
   666
  abort: pull failed on remote
46977
3f87d2af0bd6 errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents: 46884
diff changeset
   667
  [100]
35131
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   668
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   669
abort with no error hint when there is a ssh problem when pulling
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   670
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   671
  $ hg pull ssh://brokenrepository
35131
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   672
  pulling from ssh://brokenrepository/
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   673
  abort: no suitable response from remote hg
35131
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   674
  [255]
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   675
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   676
abort with configured error hint when there is a ssh problem when pulling
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   677
47951
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 47950
diff changeset
   678
  $ hg pull ssh://brokenrepository \
35191
3180ff7f6025 test-ssh: do not actually look up "brokenrepository" by DNS
Yuya Nishihara <yuya@tcha.org>
parents: 35131
diff changeset
   679
  > --config ui.ssherrorhint="Please see http://company/internalwiki/ssh.html"
35131
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   680
  pulling from ssh://brokenrepository/
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   681
  abort: no suitable response from remote hg
35131
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   682
  (Please see http://company/internalwiki/ssh.html)
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35097
diff changeset
   683
  [255]
35440
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   684
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   685
test that custom environment is passed down to ssh executable
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   686
  $ cat >>dumpenv <<EOF
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   687
  > #! /bin/sh
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   688
  > echo \$VAR >&2
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   689
  > EOF
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   690
  $ chmod +x dumpenv
35488
1853c8677160 test-ssh: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 35440
diff changeset
   691
  $ hg pull ssh://something --config ui.ssh="sh dumpenv"
35440
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   692
  pulling from ssh://something/
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   693
  remote: 
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   694
  abort: no suitable response from remote hg
35440
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   695
  [255]
35488
1853c8677160 test-ssh: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 35440
diff changeset
   696
  $ hg pull ssh://something --config ui.ssh="sh dumpenv" --config sshenv.VAR=17
35440
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   697
  pulling from ssh://something/
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   698
  remote: 17
45921
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45866
diff changeset
   699
  abort: no suitable response from remote hg
35440
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   700
  [255]
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35400
diff changeset
   701