tests/test-http.t
author Boris Feld <boris.feld@octobus.net>
Fri, 12 Jan 2018 10:57:29 +0000
changeset 35696 925107e37619
parent 35268 44b8b5ad30eb
child 35698 0c4b23ccf1a5
permissions -rw-r--r--
http: add a debug version of the push test This will be useful to test further debugging capabilities in coming changesets.
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
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    29
  $ hg clone --stream http://localhost:$HGPORT/ copy 2>&1
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    30
  streaming all changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    31
  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
    32
  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
    33
  searching for changes
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    34
  no changes found
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    35
  updating to branch default
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    36
  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
    37
  $ hg verify -R copy
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    38
  checking changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    39
  checking manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    40
  crosschecking files in changesets and manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    41
  checking files
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    42
  4 files, 1 changesets, 4 total revisions
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    43
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    44
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
    45
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    46
  $ 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
    47
  warning: stream clone requested but server has them disabled
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    48
  requesting all changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    49
  adding changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    50
  adding manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    51
  adding file changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    52
  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
    53
  new changesets 8b6053c928fe
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    54
  updating to branch default
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    55
  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
    56
32258
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    57
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
    58
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    59
  $ cat > $TESTTMP/removesupportedformat.py << EOF
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    60
  > from mercurial import localrepo
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    61
  > def extsetup(ui):
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    62
  >     localrepo.localrepository.supportedformats.remove('generaldelta')
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    63
  > EOF
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    64
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    65
  $ 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
    66
  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
    67
  (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
    68
  requesting all changes
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    69
  adding changesets
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    70
  adding manifests
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    71
  adding file changes
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    72
  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
    73
  new changesets 8b6053c928fe
32258
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    74
  updating to branch default
9c60d93fd3ab clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents: 32008
diff changeset
    75
  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
    76
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    77
clone via pull
2673
109a22f5434a hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2622
diff changeset
    78
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    79
  $ hg clone http://localhost:$HGPORT1/ copy-pull
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    80
  requesting all changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    81
  adding changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    82
  adding manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    83
  adding file changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    84
  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
    85
  new changesets 8b6053c928fe
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    86
  updating to branch default
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    87
  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
    88
  $ hg verify -R copy-pull
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    89
  checking changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    90
  checking manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    91
  crosschecking files in changesets and manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    92
  checking files
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    93
  4 files, 1 changesets, 4 total revisions
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    94
  $ cd test
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    95
  $ echo bar > bar
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    96
  $ hg commit -A -d '1 0' -m 2
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    97
  adding bar
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
    98
  $ cd ..
2673
109a22f5434a hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2622
diff changeset
    99
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   100
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
   101
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   102
  $ 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
   103
  requesting all changes
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   104
  adding changesets
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   105
  adding manifests
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   106
  adding file changes
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   107
  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
   108
  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
   109
  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
   110
  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
   111
  $ 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
   112
  changeset:   0:8b6053c928fe
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   113
  user:        test
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   114
  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
   115
  summary:     1
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   116
  
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   117
  $ rm -rf updated
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   118
14161
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   119
incoming via HTTP
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   120
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   121
  $ hg clone http://localhost:$HGPORT1/ --rev 0 partial
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   122
  adding changesets
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   123
  adding manifests
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   124
  adding file changes
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   125
  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
   126
  new changesets 8b6053c928fe
14161
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   127
  updating to branch default
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   128
  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
   129
  $ cd partial
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   130
  $ touch LOCAL
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   131
  $ hg ci -qAm LOCAL
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   132
  $ hg incoming http://localhost:$HGPORT1/ --template '{desc}\n'
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   133
  comparing with http://localhost:$HGPORT1/
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   134
  searching for changes
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   135
  2
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   136
  $ cd ..
8a0fca925992 bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14023
diff changeset
   137
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   138
pull
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   139
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   140
  $ 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
   141
  $ 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
   142
  > [hooks]
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29564
diff changeset
   143
  > 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
   144
  > EOF
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   145
  $ hg pull
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12446
diff changeset
   146
  pulling from http://localhost:$HGPORT1/
12446
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   147
  searching for changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   148
  adding changesets
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   149
  adding manifests
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   150
  adding file changes
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   151
  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
   152
  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
   153
  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
   154
  (run 'hg update' to get a working copy)
df57227a72bf tests: unify test-http
Matt Mackall <mpm@selenic.com>
parents: 10414
diff changeset
   155
  $ cd ..
13445
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   156
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   157
clone from invalid URL
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
  $ 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
   160
  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
   161
  [255]
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   162
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   163
test http authentication
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   164
+ 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
   165
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   166
  $ cd test
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   167
  $ cat << EOT > userpass.py
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   168
  > import base64
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   169
  > from mercurial.hgweb import common
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   170
  > def perform_authentication(hgweb, req, op):
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   171
  >     auth = req.env.get('HTTP_AUTHORIZATION')
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   172
  >     if not auth:
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   173
  >         raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who',
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   174
  >                 [('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
   175
  >     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
   176
  >         raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no')
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   177
  > def extsetup():
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   178
  >     common.permhooks.insert(0, perform_authentication)
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   179
  > EOT
28549
e01bd7385f4f tests: reorder hg serve commands
Jun Wu <quark@fb.com>
parents: 27752
diff changeset
   180
  $ 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
   181
  >    --config server.preferuncompressed=True \
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   182
  >    --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
   183
  $ cat pid >> $DAEMON_PIDS
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   184
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   185
  $ cat << EOF > get_pass.py
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   186
  > import getpass
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   187
  > def newgetpass(arg):
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   188
  >   return "pass"
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   189
  > getpass.getpass = newgetpass
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   190
  > EOF
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   191
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   192
  $ 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
   193
  abort: http authorization required for http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   194
  [255]
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   195
  $ hg id http://localhost:$HGPORT2/
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   196
  abort: http authorization required for http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   197
  [255]
20291
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   198
  $ 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
   199
  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
   200
  realm: mercurial
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   201
  user: user
7d589d923b8a url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents: 17342
diff changeset
   202
  password: 5fed3813f7f5
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   203
  $ hg id http://user:pass@localhost:$HGPORT2/
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   204
  5fed3813f7f5
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   205
  $ echo '[auth]' >> .hg/hgrc
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   206
  $ echo 'l.schemes=http' >> .hg/hgrc
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   207
  $ echo 'l.prefix=lo' >> .hg/hgrc
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   208
  $ echo 'l.username=user' >> .hg/hgrc
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   209
  $ 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
   210
  $ hg id http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   211
  5fed3813f7f5
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://user@localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   215
  5fed3813f7f5
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   216
  $ 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
   217
  streaming all changes
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   218
  7 files to transfer, 916 bytes of data
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   219
  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
   220
  searching for changes
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
   221
  no changes found
16361
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   222
  updating to branch default
6097ede2be4d protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents: 15446
diff changeset
   223
  5 files updated, 0 files merged, 0 files removed, 0 files unresolved
23546
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   224
--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
   225
  $ 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
   226
  requesting all changes
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   227
  adding changesets
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   228
  adding manifests
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   229
  adding file changes
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   230
  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
   231
  new changesets 8b6053c928fe:5fed3813f7f5
23546
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   232
  updating to branch default
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   233
  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
   234
17342
471f30d360ea clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents: 17260
diff changeset
   235
  $ 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
   236
  abort: http authorization required for http://localhost:$HGPORT2/
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   237
  [255]
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   238
  $ hg id http://user:pass2@localhost:$HGPORT2/
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   239
  abort: HTTP Error 403: no
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   240
  [255]
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   241
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   242
  $ hg -R dest tag -r tip top
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   243
  $ hg -R dest push http://user:pass@localhost:$HGPORT2/
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   244
  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
   245
  searching for changes
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   246
  remote: adding changesets
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   247
  remote: adding manifests
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   248
  remote: adding file changes
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   249
  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
   250
  $ hg rollback -q
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   251
  $ hg -R dest push http://user:pass@localhost:$HGPORT2/ --debug
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   252
  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
   253
  using http://localhost:$HGPORT2/
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   254
  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
   255
  sending capabilities command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   256
  query 1; heads
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   257
  sending batch command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   258
  searching for changes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   259
  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
   260
  preparing listkeys for "phases"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   261
  sending listkeys command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   262
  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
   263
  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
   264
  checking for updated bookmarks
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   265
  preparing listkeys for "bookmarks"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   266
  sending listkeys command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   267
  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
   268
  sending branchmap command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   269
  sending branchmap command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   270
  preparing listkeys for "bookmarks"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   271
  sending listkeys command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   272
  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
   273
  1 changesets found
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   274
  list of changesets:
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   275
  7f4e523d01f2cc3765ac8934da3d14db775ff872
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   276
  bundle2-output-bundle: "HG20", 5 parts total
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   277
  bundle2-output-part: "replycaps" 178 bytes payload
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   278
  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
   279
  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
   280
  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
   281
  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
   282
  sending unbundle command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   283
  sending 986 bytes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   284
  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
   285
  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
   286
  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
   287
  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
   288
  remote: adding changesets
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   289
  remote: adding manifests
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   290
  remote: adding file changes
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   291
  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
   292
  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
   293
  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
   294
  preparing listkeys for "phases"
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   295
  sending listkeys command
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   296
  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
   297
  $ hg rollback -q
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   298
29564
db565a506729 test-http: use sed instead of fixed-with cut for reading access.log
Augie Fackler <augie@google.com>
parents: 29064
diff changeset
   299
  $ sed 's/.*] "/"/' < ../access.log
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   300
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   301
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   302
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   303
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   304
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   305
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   306
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   307
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   308
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   309
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   310
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   311
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   312
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   313
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   314
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   315
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   316
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   317
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   318
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   319
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   320
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   321
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   322
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   323
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   324
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   325
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   326
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   327
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   328
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   329
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   330
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   331
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   332
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   333
  "GET /?cmd=stream_out HTTP/1.1" 401 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   334
  "GET /?cmd=stream_out HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   335
  "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$
35268
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35233
diff changeset
   336
  "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$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   337
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   338
  "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$
35268
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35233
diff changeset
   339
  "GET /?cmd=getbundle HTTP/1.1" 401 - 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$
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35233
diff changeset
   340
  "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$
23546
deabbe7ed54b localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents: 23116
diff changeset
   341
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   342
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   343
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   344
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   345
  "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   346
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   347
  "GET /?cmd=listkeys HTTP/1.1" 403 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   348
  "GET /?cmd=capabilities HTTP/1.1" 200 -
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   349
  "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$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   350
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   351
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   352
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   353
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   354
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   355
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
28996
b74ca9ace65e tests: tolerate http2
timeless <timeless@mozdev.org>
parents: 28549
diff changeset
   356
  "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365* (glob)
35074
62e10bf001a9 test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   357
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
35696
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   358
  "GET /?cmd=capabilities HTTP/1.1" 200 -
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   359
  "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$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   360
  "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   361
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   362
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   363
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   364
  "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
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$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   366
  "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
925107e37619 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   367
  "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$
20385
54235a6ff98a tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents: 20384
diff changeset
   368
15026
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   369
  $ cd ..
f32a2989ff58 test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents: 14161
diff changeset
   370
15055
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   371
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
   372
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   373
  $ 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
   374
  $ echo empty > test/sub/empty
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17023
diff changeset
   375
  $ 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
   376
  $ 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
   377
  $ 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
   378
  $ 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
   379
  $ 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
   380
  $ 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
   381
  $ 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
   382
  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
   383
  adding changesets
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   384
  adding manifests
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   385
  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
   386
  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
   387
  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
   388
  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
   389
  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
   390
  [255]
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   391
  $ 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
   392
  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
   393
  adding changesets
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   394
  adding manifests
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   395
  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
   396
  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
   397
  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
   398
  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
   399
  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
   400
  [255]
d629f1e89021 subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents: 15026
diff changeset
   401
13445
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   402
check error log
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   403
61a898576888 hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
   404
  $ 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
   405
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   406
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
   407
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   408
  $ $RUNTESTDIR/killdaemons.py
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   409
  $ 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
   410
  $ 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
   411
  $ 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
   412
  requesting all changes
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   413
  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
   414
  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
   415
  [255]
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30763
diff changeset
   416
  $ 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
   417
32260
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   418
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
   419
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   420
  $ 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
   421
  $ 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
   422
  $ 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
   423
  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
   424
  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
   425
  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
   426
  (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
   427
  [255]
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   428
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   429
... 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
   430
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   431
  $ 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
   432
  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
   433
  * 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
   434
  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
   435
  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
   436
  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
   437
  $ cat error.log
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   438
d0d9a4fca59b clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents: 32259
diff changeset
   439
... 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
   440
  $ 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
   441
  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
   442
  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
   443
  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
   444
  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
   445
  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
   446
  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
   447
  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
   448
  $ 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
   449
  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
   450
  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
   451
  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
   452
  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
   453
  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
   454
  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
   455
  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
   456
  (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
   457
31936
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   458
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
   459
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   460
  $ 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
   461
  > bad format
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   462
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   463
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   464
  $ 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
   465
  (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
   466
  56f9bc90cce6
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   467
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   468
  $ killdaemons.py
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   469
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   470
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
   471
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
   472
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
   473
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   474
  $ 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
   475
  > 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
   476
  > 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
   477
  > def perform_authentication(hgweb, req, op):
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   478
  >     cookie = req.env.get('HTTP_COOKIE')
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   479
  >     if not cookie:
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   480
  >         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
   481
  >     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
   482
  > def extsetup():
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   483
  >     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
   484
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   485
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   486
  $ 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
   487
  $ 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
   488
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   489
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
   490
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   491
  $ 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
   492
  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
   493
  [255]
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   494
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   495
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
   496
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   497
  $ 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
   498
  > # HTTP Cookie File
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   499
  > # 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
   500
  > .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
   501
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   502
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   503
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
   504
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   505
  $ 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
   506
  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
   507
  [255]
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   508
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   509
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
   510
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   511
  $ 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
   512
  > 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
   513
  > EOF
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   514
806f9a883b4f url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31768
diff changeset
   515
  $ 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
   516
  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
   517
  [255]