tests/test-http.t
author Gregory Szorc <gregory.szorc@gmail.com>
Mon, 09 Apr 2018 15:32:01 -0700
changeset 37543 01361be9e2dc
parent 37498 aacfca6f9767
child 37556 b77aa48ba690
permissions -rw-r--r--
wireproto: introduce a reactor for client-side state We have a nice state machine of sorts for reacting to server-side events. Now it is time to implement the client equivalent. We introduce a "clientreactor." It allows callers to request that commands be issued. It has multiple modes of operation to reflect what the underlying transport supports. e.g. for SSH, we can perform wire sends immediately but for HTTP we need to buffer sends until all command requests are received. In addition, SSH allows sending multiple requests as long as the connection is open. But HTTP/1.1 only allows sending request data once. For SSH, we'll have one reactor per connection. For HTTP, we'll have one reactor per HTTP request. But because code that calls wire protocol commands should not be aware of how the underlying transport works, this will all be abstracted away by the peer interface. Our crude HTTP peer has been updated to use the reactor instead of formulating frames directly. No behavior should have changed here and tests seem to confirm that. Basic unit tests for the reactor behavior have been added. Differential Revision: https://phab.mercurial-scm.org/D3223
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31936
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
     1
#require killdaemons serve
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     2
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     3
  $ hg init test
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     4
  $ cd test
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     5
  $ echo foo>foo
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     6
  $ mkdir foo.d foo.d/bAr.hg.d foo.d/baR.d.hg
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     7
  $ echo foo>foo.d/foo
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     8
  $ echo bar>foo.d/bAr.hg.d/BaR
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
     9
  $ echo bar>foo.d/baR.d.hg/bAR
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    10
  $ hg commit -A -m 1
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    11
  adding foo
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    12
  adding foo.d/bAr.hg.d/BaR
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    13
  adding foo.d/baR.d.hg/bAR
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    14
  adding foo.d/foo
13445
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
    15
  $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log
28549
e01bd7385f4f tests: reorder hg serve commands
Jun Wu <quark@fb.com>
parents: 27752
diff changeset
    16
  $ hg serve --config server.uncompressed=False -p $HGPORT1 -d --pid-file=../hg2.pid
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    17
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    18
Test server address cannot be reused
4289
e17598881509 test-http: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4130
diff changeset
    19
17023
3e2d8120528b test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17018
diff changeset
    20
  $ hg serve -p $HGPORT1 2>&1
35233
1b22d325089c tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents: 35074
diff changeset
    21
  abort: cannot start server at 'localhost:$HGPORT1': $EADDRINUSE$
17023
3e2d8120528b test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17018
diff changeset
    22
  [255]
35233
1b22d325089c tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents: 35074
diff changeset
    23
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    24
  $ cd ..
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    25
  $ cat hg1.pid hg2.pid >> $DAEMON_PIDS
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    26
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    27
clone via stream
9506
49b62395e910 streamclone: partially encode filename over the wire, not for local read (issue1847)
Greg Ward <greg-hg@gerg.ca>
parents: 8167
diff changeset
    28
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
    29
#if no-reposimplestore
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    30
  $ hg clone --stream http://localhost:$HGPORT/ copy 2>&1
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    31
  streaming all changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    32
  6 files to transfer, 606 bytes of data
14023
2cd1520664b8 tests: check for (*/sec) instead of (*B/sec) to match (X bytes/sec)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13445
diff changeset
    33
  transferred * bytes in * seconds (*/sec) (glob)
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    34
  searching for changes
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    35
  no changes found
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    36
  updating to branch default
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    37
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    38
  $ hg verify -R copy
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    39
  checking changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    40
  checking manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    41
  crosschecking files in changesets and manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    42
  checking files
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    43
  4 files, 1 changesets, 4 total revisions
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
    44
#endif
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    45
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    46
try to clone via stream, should use pull instead
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    47
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    48
  $ hg clone --stream http://localhost:$HGPORT1/ copy2
32259
076f1ff43f0f clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents: 32258
diff changeset
    49
  warning: stream clone requested but server has them disabled
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    50
  requesting all changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    51
  adding changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    52
  adding manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    53
  adding file changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    54
  added 1 changesets with 4 changes to 4 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
    55
  new changesets 8b6053c928fe
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    56
  updating to branch default
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    57
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    58
32258
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    59
try to clone via stream but missing requirements, so should use pull instead
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    60
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    61
  $ cat > $TESTTMP/removesupportedformat.py << EOF
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    62
  > from mercurial import localrepo
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    63
  > def extsetup(ui):
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    64
  >     localrepo.localrepository.supportedformats.remove('generaldelta')
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    65
  > EOF
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    66
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    67
  $ hg clone --config extensions.rsf=$TESTTMP/removesupportedformat.py --stream http://localhost:$HGPORT/ copy3
32259
076f1ff43f0f clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents: 32258
diff changeset
    68
  warning: stream clone requested but client is missing requirements: generaldelta
076f1ff43f0f clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents: 32258
diff changeset
    69
  (see https://www.mercurial-scm.org/wiki/MissingRequirement for more information)
32258
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    70
  requesting all changes
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    71
  adding changesets
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    72
  adding manifests
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    73
  adding file changes
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    74
  added 1 changesets with 4 changes to 4 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
    75
  new changesets 8b6053c928fe
32258
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    76
  updating to branch default
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    77
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    78
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    79
clone via pull
2673
109a22f5434a hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2622
diff changeset
    80
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    81
  $ hg clone http://localhost:$HGPORT1/ copy-pull
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    82
  requesting all changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    83
  adding changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    84
  adding manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    85
  adding file changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    86
  added 1 changesets with 4 changes to 4 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
    87
  new changesets 8b6053c928fe
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    88
  updating to branch default
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    89
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    90
  $ hg verify -R copy-pull
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    91
  checking changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    92
  checking manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    93
  crosschecking files in changesets and manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    94
  checking files
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    95
  4 files, 1 changesets, 4 total revisions
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    96
  $ cd test
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    97
  $ echo bar > bar
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    98
  $ hg commit -A -d '1 0' -m 2
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    99
  adding bar
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   100
  $ cd ..
2673
109a22f5434a hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2622
diff changeset
   101
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   102
clone over http with --update
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   103
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   104
  $ hg clone http://localhost:$HGPORT1/ updated --update 0
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   105
  requesting all changes
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   106
  adding changesets
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   107
  adding manifests
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   108
  adding file changes
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   109
  added 2 changesets with 5 changes to 5 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   110
  new changesets 8b6053c928fe:5fed3813f7f5
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   111
  updating to branch default
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   112
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   113
  $ hg log -r . -R updated
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   114
  changeset:   0:8b6053c928fe
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   115
  user:        test
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   116
  date:        Thu Jan 01 00:00:00 1970 +0000
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   117
  summary:     1
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   118
  
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   119
  $ rm -rf updated
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   120
14161
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   121
incoming via HTTP
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   122
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   123
  $ hg clone http://localhost:$HGPORT1/ --rev 0 partial
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   124
  adding changesets
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   125
  adding manifests
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   126
  adding file changes
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   127
  added 1 changesets with 4 changes to 4 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   128
  new changesets 8b6053c928fe
14161
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   129
  updating to branch default
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   130
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   131
  $ cd partial
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   132
  $ touch LOCAL
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   133
  $ hg ci -qAm LOCAL
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   134
  $ hg incoming http://localhost:$HGPORT1/ --template '{desc}\n'
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   135
  comparing with http://localhost:$HGPORT1/
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   136
  searching for changes
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   137
  2
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   138
  $ cd ..
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   139
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   140
pull
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   141
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   142
  $ cd copy-pull
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29564
diff changeset
   143
  $ cat >> .hg/hgrc <<EOF
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29564
diff changeset
   144
  > [hooks]
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29564
diff changeset
   145
  > changegroup = sh -c "printenv.py changegroup"
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29564
diff changeset
   146
  > EOF
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   147
  $ hg pull
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12446
diff changeset
   148
  pulling from http://localhost:$HGPORT1/
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   149
  searching for changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   150
  adding changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   151
  adding manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   152
  adding file changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   153
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   154
  new changesets 5fed3813f7f5
31747
aff7b32b3c05 hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31746
diff changeset
   155
  changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_SOURCE=pull HG_TXNID=TXN:$ID$ HG_URL=http://localhost:$HGPORT1/
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   156
  (run 'hg update' to get a working copy)
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   157
  $ cd ..
13445
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   158
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   159
clone from invalid URL
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   160
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   161
  $ hg clone http://localhost:$HGPORT/bad
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   162
  abort: HTTP Error 404: Not Found
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   163
  [255]
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   164
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   165
test http authentication
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   166
+ use the same server to test server side streaming preference
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   167
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   168
  $ cd test
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   169
  $ cat << EOT > userpass.py
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   170
  > import base64
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   171
  > from mercurial.hgweb import common
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   172
  > def perform_authentication(hgweb, req, op):
36877
02bea04b4c54 hgweb: transition permissions hooks to modern request type (API)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36754
diff changeset
   173
  >     auth = req.headers.get('Authorization')
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   174
  >     if not auth:
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   175
  >         raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who',
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   176
  >                 [('WWW-Authenticate', 'Basic Realm="mercurial"')])
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   177
  >     if base64.b64decode(auth.split()[1]).split(':', 1) != ['user', 'pass']:
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   178
  >         raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no')
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   179
  > def extsetup():
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   180
  >     common.permhooks.insert(0, perform_authentication)
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   181
  > EOT
28549
e01bd7385f4f tests: reorder hg serve commands
Jun Wu <quark@fb.com>
parents: 27752
diff changeset
   182
  $ hg serve --config extensions.x=userpass.py -p $HGPORT2 -d --pid-file=pid \
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   183
  >    --config server.preferuncompressed=True \
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   184
  >    --config web.push_ssl=False --config web.allow_push=* -A ../access.log
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   185
  $ cat pid >> $DAEMON_PIDS
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   186
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   187
  $ cat << EOF > get_pass.py
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   188
  > import getpass
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   189
  > def newgetpass(arg):
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   190
  >   return "pass"
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   191
  > getpass.getpass = newgetpass
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   192
  > EOF
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   193
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   194
  $ hg id http://localhost:$HGPORT2/
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   195
  abort: http authorization required for http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   196
  [255]
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   197
  $ hg id http://localhost:$HGPORT2/
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   198
  abort: http authorization required for http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   199
  [255]
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   200
  $ hg id --config ui.interactive=true --config extensions.getpass=get_pass.py http://user@localhost:$HGPORT2/
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   201
  http authorization required for http://localhost:$HGPORT2/
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   202
  realm: mercurial
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   203
  user: user
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   204
  password: 5fed3813f7f5
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   205
  $ hg id http://user:pass@localhost:$HGPORT2/
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   206
  5fed3813f7f5
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   207
  $ echo '[auth]' >> .hg/hgrc
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   208
  $ echo 'l.schemes=http' >> .hg/hgrc
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   209
  $ echo 'l.prefix=lo' >> .hg/hgrc
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   210
  $ echo 'l.username=user' >> .hg/hgrc
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   211
  $ echo 'l.password=pass' >> .hg/hgrc
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   212
  $ hg id http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   213
  5fed3813f7f5
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   214
  $ hg id http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   215
  5fed3813f7f5
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   216
  $ hg id http://user@localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   217
  5fed3813f7f5
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   218
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   219
#if no-reposimplestore
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   220
  $ hg clone http://user:pass@localhost:$HGPORT2/ dest 2>&1
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   221
  streaming all changes
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   222
  7 files to transfer, 916 bytes of data
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   223
  transferred * bytes in * seconds (*/sec) (glob)
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
   224
  searching for changes
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
   225
  no changes found
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   226
  updating to branch default
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   227
  5 files updated, 0 files merged, 0 files removed, 0 files unresolved
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   228
#endif
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   229
23546
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   230
--pull should override server's preferuncompressed
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   231
  $ hg clone --pull http://user:pass@localhost:$HGPORT2/ dest-pull 2>&1
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   232
  requesting all changes
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   233
  adding changesets
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   234
  adding manifests
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   235
  adding file changes
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   236
  added 2 changesets with 5 changes to 5 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   237
  new changesets 8b6053c928fe:5fed3813f7f5
23546
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   238
  updating to branch default
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   239
  5 files updated, 0 files merged, 0 files removed, 0 files unresolved
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   240
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   241
  $ hg id http://user2@localhost:$HGPORT2/
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   242
  abort: http authorization required for http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   243
  [255]
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   244
  $ hg id http://user:pass2@localhost:$HGPORT2/
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   245
  abort: HTTP Error 403: no
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   246
  [255]
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   247
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   248
  $ hg -R dest-pull tag -r tip top
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   249
  $ hg -R dest-pull push http://user:pass@localhost:$HGPORT2/
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   250
  pushing to http://user:***@localhost:$HGPORT2/
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   251
  searching for changes
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   252
  remote: adding changesets
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   253
  remote: adding manifests
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   254
  remote: adding file changes
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   255
  remote: added 1 changesets with 1 changes to 1 files
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   256
  $ hg rollback -q
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36968
diff changeset
   257
  $ hg -R dest-pull push http://user:pass@localhost:$HGPORT2/ --debug --config devel.debug.peer-request=yes
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   258
  pushing to http://user:***@localhost:$HGPORT2/
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   259
  using http://localhost:$HGPORT2/
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   260
  http auth: user user, password ****
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   261
  sending capabilities command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   262
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=capabilities
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   263
  devel-peer-request:   Vary X-HgProto-1
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   264
  devel-peer-request:   X-hgproto-1 partial-pull
36754
e3c228b4510d wireproto: declare operation type for most commands (BC) (SEC)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
   265
  http auth: user user, password ****
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   266
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   267
  query 1; heads
36945
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36877
diff changeset
   268
  devel-peer-request: batched-content
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36877
diff changeset
   269
  devel-peer-request:    - heads (0 arguments)
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36877
diff changeset
   270
  devel-peer-request:    - known (1 arguments)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   271
  sending batch command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   272
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=batch
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   273
  devel-peer-request:   Vary X-HgArg-1,X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   274
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   275
  devel-peer-request:   68 bytes of commands arguments in headers
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   276
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   277
  searching for changes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   278
  all remote heads known locally
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   279
  preparing listkeys for "phases"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   280
  sending listkeys command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   281
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=listkeys
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   282
  devel-peer-request:   Vary X-HgArg-1,X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   283
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   284
  devel-peer-request:   16 bytes of commands arguments in headers
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   285
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   286
  received listkey for "phases": 58 bytes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   287
  checking for updated bookmarks
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   288
  preparing listkeys for "bookmarks"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   289
  sending listkeys command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   290
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=listkeys
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   291
  devel-peer-request:   Vary X-HgArg-1,X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   292
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   293
  devel-peer-request:   19 bytes of commands arguments in headers
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   294
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   295
  received listkey for "bookmarks": 0 bytes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   296
  sending branchmap command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   297
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=branchmap
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   298
  devel-peer-request:   Vary X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   299
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   300
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   301
  sending branchmap command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   302
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=branchmap
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   303
  devel-peer-request:   Vary X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   304
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   305
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   306
  preparing listkeys for "bookmarks"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   307
  sending listkeys command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   308
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=listkeys
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   309
  devel-peer-request:   Vary X-HgArg-1,X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   310
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   311
  devel-peer-request:   19 bytes of commands arguments in headers
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   312
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   313
  received listkey for "bookmarks": 0 bytes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   314
  1 changesets found
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   315
  list of changesets:
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   316
  7f4e523d01f2cc3765ac8934da3d14db775ff872
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   317
  bundle2-output-bundle: "HG20", 5 parts total
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36945
diff changeset
   318
  bundle2-output-part: "replycaps" 205 bytes payload
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   319
  bundle2-output-part: "check:phases" 24 bytes payload
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   320
  bundle2-output-part: "check:heads" streamed payload
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   321
  bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   322
  bundle2-output-part: "phase-heads" 24 bytes payload
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   323
  sending unbundle command
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36945
diff changeset
   324
  sending 1013 bytes
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   325
  devel-peer-request: POST http://localhost:$HGPORT2/?cmd=unbundle
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36945
diff changeset
   326
  devel-peer-request:   Content-length 1013
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   327
  devel-peer-request:   Content-type application/mercurial-0.1
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   328
  devel-peer-request:   Vary X-HgArg-1,X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   329
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   330
  devel-peer-request:   16 bytes of commands arguments in headers
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36945
diff changeset
   331
  devel-peer-request:   1013 bytes of data
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   332
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   333
  bundle2-input-bundle: no-transaction
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   334
  bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   335
  bundle2-input-part: "output" (advisory) (params: 0 advisory) supported
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   336
  bundle2-input-part: total payload size 100
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   337
  remote: adding changesets
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   338
  remote: adding manifests
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   339
  remote: adding file changes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   340
  remote: added 1 changesets with 1 changes to 1 files
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   341
  bundle2-input-part: "output" (advisory) supported
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   342
  bundle2-input-bundle: 2 parts total
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   343
  preparing listkeys for "phases"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   344
  sending listkeys command
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   345
  devel-peer-request: GET http://localhost:$HGPORT2/?cmd=listkeys
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   346
  devel-peer-request:   Vary X-HgArg-1,X-HgProto-1
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   347
  devel-peer-request:   X-hgproto-1 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
35698
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   348
  devel-peer-request:   16 bytes of commands arguments in headers
0c4b23ccf1a5 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net>
parents: 35696
diff changeset
   349
  devel-peer-request:   finished in *.???? seconds (200) (glob)
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   350
  received listkey for "phases": 15 bytes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   351
  $ hg rollback -q
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   352
29564
db565a506729 test-http: use sed instead of fixed-with cut for reading access.log
Augie Fackler <augie@google.com>
parents: 29064
diff changeset
   353
  $ sed 's/.*] "/"/' < ../access.log
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   354
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   355
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   356
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   357
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   358
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   359
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   360
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   361
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   362
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   363
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   364
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   365
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   366
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   367
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   368
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   369
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   370
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   371
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   372
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   373
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   374
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   375
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   376
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   377
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   378
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   379
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   380
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   381
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   382
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   383
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   384
  "GET /?cmd=stream_out HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   385
  "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D5fed3813f7f5e1824344fdc9cf8f63bb662c292d x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   386
  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=0&common=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   387
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   388
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull (no-reposimplestore !)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   389
  "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   390
  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   391
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   392
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   393
  "GET /?cmd=capabilities HTTP/1.1" 403 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   394
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   395
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   396
  "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D7f4e523d01f2cc3765ac8934da3d14db775ff872 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   397
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   398
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   399
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   400
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   401
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
28996
b74ca9ace65e tests: tolerate http2
timeless <timeless@mozdev.org>
parents: 28549
diff changeset
   402
  "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365* (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   403
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   404
  "GET /?cmd=capabilities HTTP/1.1" 401 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   405
  "GET /?cmd=capabilities HTTP/1.1" 200 - x-hgproto-1:partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   406
  "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D7f4e523d01f2cc3765ac8934da3d14db775ff872 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   407
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   408
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   409
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   410
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   411
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   412
  "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37416
diff changeset
   413
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   414
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   415
  $ cd ..
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   416
15055
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   417
clone of serve with repo in root and unserved subrepo (issue2970)
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   418
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   419
  $ hg --cwd test init sub
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17023
diff changeset
   420
  $ echo empty > test/sub/empty
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17023
diff changeset
   421
  $ hg --cwd test/sub add empty
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17023
diff changeset
   422
  $ hg --cwd test/sub commit -qm 'add empty'
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17023
diff changeset
   423
  $ hg --cwd test/sub tag -r 0 something
15055
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   424
  $ echo sub = sub > test/.hgsub
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   425
  $ hg --cwd test add .hgsub
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   426
  $ hg --cwd test commit -qm 'add subrepo'
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   427
  $ hg clone http://localhost:$HGPORT noslash-clone
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   428
  requesting all changes
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   429
  adding changesets
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   430
  adding manifests
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   431
  adding file changes
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   432
  added 3 changesets with 7 changes to 7 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   433
  new changesets 8b6053c928fe:56f9bc90cce6
15055
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   434
  updating to branch default
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   435
  abort: HTTP Error 404: Not Found
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   436
  [255]
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   437
  $ hg clone http://localhost:$HGPORT/ slash-clone
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   438
  requesting all changes
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   439
  adding changesets
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   440
  adding manifests
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   441
  adding file changes
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   442
  added 3 changesets with 7 changes to 7 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   443
  new changesets 8b6053c928fe:56f9bc90cce6
15055
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   444
  updating to branch default
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   445
  abort: HTTP Error 404: Not Found
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   446
  [255]
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   447
13445
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   448
check error log
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   449
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   450
  $ cat error.log
30914
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   451
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   452
check abort error reporting while pulling/cloning
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   453
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   454
  $ $RUNTESTDIR/killdaemons.py
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   455
  $ hg serve -R test -p $HGPORT -d --pid-file=hg3.pid -E error.log --config extensions.crash=${TESTDIR}/crashgetbundler.py
30914
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   456
  $ cat hg3.pid >> $DAEMON_PIDS
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   457
  $ hg clone http://localhost:$HGPORT/ abort-clone
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   458
  requesting all changes
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   459
  remote: abort: this is an exercise
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   460
  abort: pull failed on remote
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   461
  [255]
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   462
  $ cat error.log
31936
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   463
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   464
disable pull-based clones
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   465
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   466
  $ hg serve -R test -p $HGPORT1 -d --pid-file=hg4.pid -E error.log --config server.disablefullbundle=True
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   467
  $ cat hg4.pid >> $DAEMON_PIDS
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   468
  $ hg clone http://localhost:$HGPORT1/ disable-pull-clone
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   469
  requesting all changes
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   470
  remote: abort: server has pull-based clones disabled
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   471
  abort: pull failed on remote
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   472
  (remove --pull if specified or upgrade Mercurial)
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   473
  [255]
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   474
37416
7542e97c7867 tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37349
diff changeset
   475
#if no-reposimplestore
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   476
... but keep stream clones working
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   477
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   478
  $ hg clone --stream --noupdate http://localhost:$HGPORT1/ test-stream-clone
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   479
  streaming all changes
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   480
  * files to transfer, * of data (glob)
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   481
  transferred * in * seconds (*/sec) (glob)
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   482
  searching for changes
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   483
  no changes found
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   484
  $ cat error.log
37416
7542e97c7867 tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37349
diff changeset
   485
#endif
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   486
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   487
... and also keep partial clones and pulls working
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   488
  $ hg clone http://localhost:$HGPORT1 --rev 0 test-partial-clone
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   489
  adding changesets
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   490
  adding manifests
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   491
  adding file changes
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   492
  added 1 changesets with 4 changes to 4 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   493
  new changesets 8b6053c928fe
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   494
  updating to branch default
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   495
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   496
  $ hg pull -R test-partial-clone
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   497
  pulling from http://localhost:$HGPORT1/
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   498
  searching for changes
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   499
  adding changesets
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   500
  adding manifests
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   501
  adding file changes
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   502
  added 2 changesets with 3 changes to 3 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34483
diff changeset
   503
  new changesets 5fed3813f7f5:56f9bc90cce6
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   504
  (run 'hg update' to get a working copy)
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   505
31936
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   506
corrupt cookies file should yield a warning
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   507
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   508
  $ cat > $TESTTMP/cookies.txt << EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   509
  > bad format
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   510
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   511
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   512
  $ hg --config auth.cookiefile=$TESTTMP/cookies.txt id http://localhost:$HGPORT/
32008
9a782e7e651e test-http: add a (glob) for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31936
diff changeset
   513
  (error loading cookie file $TESTTMP/cookies.txt: '*/cookies.txt' does not look like a Netscape format cookies file; continuing without cookies) (glob)
31936
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   514
  56f9bc90cce6
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   515
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   516
  $ killdaemons.py
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   517
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   518
Create dummy authentication handler that looks for cookies. It doesn't do anything
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   519
useful. It just raises an HTTP 500 with details about the Cookie request header.
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   520
We raise HTTP 500 because its message is printed in the abort message.
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   521
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   522
  $ cat > cookieauth.py << EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   523
  > from mercurial import util
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   524
  > from mercurial.hgweb import common
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   525
  > def perform_authentication(hgweb, req, op):
36877
02bea04b4c54 hgweb: transition permissions hooks to modern request type (API)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36754
diff changeset
   526
  >     cookie = req.headers.get('Cookie')
31936
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   527
  >     if not cookie:
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   528
  >         raise common.ErrorResponse(common.HTTP_SERVER_ERROR, 'no-cookie')
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   529
  >     raise common.ErrorResponse(common.HTTP_SERVER_ERROR, 'Cookie: %s' % cookie)
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   530
  > def extsetup():
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   531
  >     common.permhooks.insert(0, perform_authentication)
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   532
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   533
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   534
  $ hg serve --config extensions.cookieauth=cookieauth.py -R test -p $HGPORT -d --pid-file=pid
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   535
  $ cat pid > $DAEMON_PIDS
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   536
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   537
Request without cookie sent should fail due to lack of cookie
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   538
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   539
  $ hg id http://localhost:$HGPORT
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   540
  abort: HTTP Error 500: no-cookie
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   541
  [255]
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   542
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   543
Populate a cookies file
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   544
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   545
  $ cat > cookies.txt << EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   546
  > # HTTP Cookie File
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   547
  > # Expiration is 2030-01-01 at midnight
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   548
  > .example.com	TRUE	/	FALSE	1893456000	hgkey	examplevalue
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   549
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   550
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   551
Should not send a cookie for another domain
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   552
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   553
  $ hg --config auth.cookiefile=cookies.txt id http://localhost:$HGPORT/
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   554
  abort: HTTP Error 500: no-cookie
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   555
  [255]
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   556
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   557
Add a cookie entry for our test server and verify it is sent
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   558
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   559
  $ cat >> cookies.txt << EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   560
  > localhost.local	FALSE	/	FALSE	1893456000	hgkey	localhostvalue
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   561
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   562
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   563
  $ hg --config auth.cookiefile=cookies.txt id http://localhost:$HGPORT/
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   564
  abort: HTTP Error 500: Cookie: hgkey=localhostvalue
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   565
  [255]