tests/test-push-http.t
author Gregory Szorc <gregory.szorc@gmail.com>
Tue, 24 Apr 2018 13:55:25 -0700
branchstable
changeset 37818 877185de62cf
parent 37592 fb91757471b5
child 37824 2968ad548583
permissions -rw-r--r--
hgweb: reuse body file object when hgwebdir calls hgweb (issue5851) An unintended side-effect of f0a851542a05 was that the request body file object (which uses a util.cappedreader) was constructed twice when hgwebdir called into hgweb. Since we attempt to read all remaining data from this file object when Content-Length is defined and since there were two instances of this object and the client supplied no additional data to read, this resulted in deadlock. The fix implemented in this commit is to reuse the request body file object when it is passed from hgwebdir to hgweb. A test demonstrating `hg clone` and `hg push` via hgwebdir has been added. Without this patch, the test hangs when doing `hg clone`. Surprisingly, this must mean that we have effectively no test coverage of the wire protocol when run via hgwebdir. Differential Revision: https://phab.mercurial-scm.org/D3427
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20966
diff changeset
     1
#require killdaemons
2481
5c65b4e51610 add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     2
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     3
#testcases bundle1 bundle2
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     4
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     5
#if bundle1
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     6
  $ cat << EOF >> $HGRCPATH
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     7
  > [devel]
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     8
  > # This test is dedicated to interaction through old bundle
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
     9
  > legacy.exchange = bundle1
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
    10
  > EOF
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
    11
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
    12
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    13
  $ hg init test
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    14
  $ cd test
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    15
  $ echo a > a
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    16
  $ hg ci -Ama
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    17
  adding a
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    18
  $ cd ..
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    19
  $ hg clone test test2
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    20
  updating to branch default
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    21
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    22
  $ cd test2
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    23
  $ echo a >> a
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    24
  $ hg ci -mb
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    25
  $ req() {
37414
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    26
  >     hg $1 serve -p $HGPORT -d --pid-file=hg.pid -E errors.log
12743
4c4aeaab2339 check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 12643
diff changeset
    27
  >     cat hg.pid >> $DAEMON_PIDS
4c4aeaab2339 check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 12643
diff changeset
    28
  >     hg --cwd ../test2 push http://localhost:$HGPORT/
17455
2212af23c9de test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents: 17018
diff changeset
    29
  >     exitstatus=$?
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
    30
  >     killdaemons.py
12743
4c4aeaab2339 check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 12643
diff changeset
    31
  >     echo % serve errors
4c4aeaab2339 check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 12643
diff changeset
    32
  >     cat errors.log
17455
2212af23c9de test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents: 17018
diff changeset
    33
  >     return $exitstatus
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    34
  > }
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    35
  $ cd ../test
2481
5c65b4e51610 add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    36
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    37
expect ssl error
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    38
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    39
  $ req
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12483
diff changeset
    40
  pushing to http://localhost:$HGPORT/
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    41
  searching for changes
17456
59a168019255 hgweb: respond 403 forbidden for ssl required error
Yuya Nishihara <yuya@tcha.org>
parents: 17455
diff changeset
    42
  abort: HTTP Error 403: ssl required
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    43
  % serve errors
17456
59a168019255 hgweb: respond 403 forbidden for ssl required error
Yuya Nishihara <yuya@tcha.org>
parents: 17455
diff changeset
    44
  [255]
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    45
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    46
expect authorization error
6167
f53b9a383476 tests: easier hg serve error diagnosis
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5386
diff changeset
    47
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    48
  $ echo '[web]' > .hg/hgrc
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    49
  $ echo 'push_ssl = false' >> .hg/hgrc
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    50
  $ req
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12483
diff changeset
    51
  pushing to http://localhost:$HGPORT/
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    52
  searching for changes
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    53
  abort: authorization failed
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    54
  % serve errors
17455
2212af23c9de test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents: 17018
diff changeset
    55
  [255]
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    56
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    57
expect authorization error: must have authorized user
2481
5c65b4e51610 add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    58
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    59
  $ echo 'allow_push = unperson' >> .hg/hgrc
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    60
  $ req
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12483
diff changeset
    61
  pushing to http://localhost:$HGPORT/
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    62
  searching for changes
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    63
  abort: authorization failed
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    64
  % serve errors
17455
2212af23c9de test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents: 17018
diff changeset
    65
  [255]
2481
5c65b4e51610 add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    66
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    67
expect success
2481
5c65b4e51610 add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    68
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
    69
  $ cat > $TESTTMP/hook.sh <<'EOF'
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
    70
  > echo "phase-move: $HG_NODE:  $HG_OLDPHASE -> $HG_PHASE"
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
    71
  > EOF
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
    72
37414
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    73
#if bundle1
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    74
  $ cat >> .hg/hgrc <<EOF
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    75
  > allow_push = *
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    76
  > [hooks]
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    77
  > changegroup = sh -c "printenv.py changegroup 0"
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    78
  > pushkey = sh -c "printenv.py pushkey 0"
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    79
  > txnclose-phase.test = sh $TESTTMP/hook.sh 
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    80
  > EOF
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    81
  $ req "--debug --config extensions.blackbox="
37592
fb91757471b5 tests: glob away fqdn wherever we print it
Augie Fackler <augie@google.com>
parents: 37478
diff changeset
    82
  listening at http://*:$HGPORT/ (bound to $LOCALIP:$HGPORT) (glob) (?)
37414
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    83
  pushing to http://localhost:$HGPORT/
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    84
  searching for changes
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    85
  remote: redirecting incoming bundle to */hg-unbundle-* (glob)
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    86
  remote: adding changesets
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    87
  remote: add changeset ba677d0156c1
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    88
  remote: adding manifests
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    89
  remote: adding file changes
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    90
  remote: adding a revisions
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    91
  remote: added 1 changesets with 1 changes to 1 files
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    92
  remote: updating the branch cache
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    93
  remote: running hook txnclose-phase.test: sh $TESTTMP/hook.sh
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    94
  remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b:  draft -> public
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    95
  remote: running hook txnclose-phase.test: sh $TESTTMP/hook.sh
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    96
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    97
  remote: running hook changegroup: sh -c "printenv.py changegroup 0"
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    98
  remote: changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
    99
  % serve errors
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   100
  $ hg rollback
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   101
  repository tip rolled back to revision 0 (undo serve)
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   102
  $ req "--debug --config server.streamunbundle=True --config extensions.blackbox="
37592
fb91757471b5 tests: glob away fqdn wherever we print it
Augie Fackler <augie@google.com>
parents: 37478
diff changeset
   103
  listening at http://*:$HGPORT/ (bound to $LOCALIP:$HGPORT) (glob) (?)
37414
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   104
  pushing to http://localhost:$HGPORT/
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   105
  searching for changes
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   106
  remote: adding changesets
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   107
  remote: add changeset ba677d0156c1
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   108
  remote: adding manifests
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   109
  remote: adding file changes
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   110
  remote: adding a revisions
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   111
  remote: added 1 changesets with 1 changes to 1 files
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   112
  remote: updating the branch cache
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   113
  remote: running hook txnclose-phase.test: sh $TESTTMP/hook.sh
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   114
  remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b:  draft -> public
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   115
  remote: running hook txnclose-phase.test: sh $TESTTMP/hook.sh
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   116
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   117
  remote: running hook changegroup: sh -c "printenv.py changegroup 0"
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   118
  remote: changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   119
  % serve errors
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   120
  $ hg rollback
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   121
  repository tip rolled back to revision 0 (undo serve)
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   122
#endif
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   123
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   124
#if bundle2
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   125
  $ cat >> .hg/hgrc <<EOF
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   126
  > allow_push = *
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   127
  > [hooks]
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   128
  > changegroup = sh -c "printenv.py changegroup 0"
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   129
  > pushkey = sh -c "printenv.py pushkey 0"
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
   130
  > txnclose-phase.test = sh $TESTTMP/hook.sh 
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   131
  > EOF
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   132
  $ req
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12483
diff changeset
   133
  pushing to http://localhost:$HGPORT/
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   134
  searching for changes
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   135
  remote: adding changesets
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   136
  remote: adding manifests
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   137
  remote: adding file changes
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   138
  remote: added 1 changesets with 1 changes to 1 files
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34836
diff changeset
   139
  remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34836
diff changeset
   140
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
37414
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   141
  remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   142
  % serve errors
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   143
  $ hg rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13405
diff changeset
   144
  repository tip rolled back to revision 0 (undo serve)
37414
2d965bfeb8f6 wireproto: allow direct stream processing for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 36751
diff changeset
   145
#endif
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
   146
14093
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   147
expect success, server lacks the httpheader capability
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   148
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   149
  $ CAP=httpheader
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   150
  $ . "$TESTDIR/notcapable"
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   151
  $ req
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   152
  pushing to http://localhost:$HGPORT/
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   153
  searching for changes
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   154
  remote: adding changesets
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   155
  remote: adding manifests
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   156
  remote: adding file changes
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   157
  remote: added 1 changesets with 1 changes to 1 files
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34836
diff changeset
   158
  remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34836
diff changeset
   159
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   160
  remote: changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) (bundle1 !)
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   161
  remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) (bundle2 !)
14093
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   162
  % serve errors
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   163
  $ hg rollback
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   164
  repository tip rolled back to revision 0 (undo serve)
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   165
13946
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   166
expect success, server lacks the unbundlehash capability
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   167
14011
b69471bdb678 tests: add script to disable a selected wire protocol capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13946
diff changeset
   168
  $ CAP=unbundlehash
b69471bdb678 tests: add script to disable a selected wire protocol capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13946
diff changeset
   169
  $ . "$TESTDIR/notcapable"
13946
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   170
  $ req
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   171
  pushing to http://localhost:$HGPORT/
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   172
  searching for changes
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   173
  remote: adding changesets
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   174
  remote: adding manifests
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   175
  remote: adding file changes
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   176
  remote: added 1 changesets with 1 changes to 1 files
34876
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34836
diff changeset
   177
  remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b:  draft -> public
eb1b964b354b phases: pass phase names to hooks instead of internal values
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents: 34836
diff changeset
   178
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   179
  remote: changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) (bundle1 !)
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   180
  remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) (bundle2 !)
13946
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   181
  % serve errors
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   182
  $ hg rollback
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   183
  repository tip rolled back to revision 0 (undo serve)
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   184
36241
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   185
expect success, pre-d1b16a746db6 server supports the unbundle capability, but
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   186
has no parameter
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   187
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   188
  $ cat <<EOF > notcapable-unbundleparam.py
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   189
  > from mercurial import extensions, httppeer
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   190
  > def capable(orig, self, name):
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   191
  >     if name == 'unbundle':
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   192
  >         return True
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   193
  >     return orig(self, name)
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   194
  > def uisetup(ui):
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   195
  >     extensions.wrapfunction(httppeer.httppeer, 'capable', capable)
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   196
  > EOF
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   197
  $ cp $HGRCPATH $HGRCPATH.orig
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   198
  $ cat <<EOF >> $HGRCPATH
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   199
  > [extensions]
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   200
  > notcapable-unbundleparam = `pwd`/notcapable-unbundleparam.py
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   201
  > EOF
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   202
  $ req
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   203
  pushing to http://localhost:$HGPORT/
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   204
  searching for changes
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   205
  remote: adding changesets
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   206
  remote: adding manifests
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   207
  remote: adding file changes
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   208
  remote: added 1 changesets with 1 changes to 1 files
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   209
  remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b:  draft -> public
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   210
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   211
  remote: changegroup hook: * (glob)
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   212
  % serve errors
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   213
  $ hg rollback
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   214
  repository tip rolled back to revision 0 (undo serve)
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   215
  $ mv $HGRCPATH.orig $HGRCPATH
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   216
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   217
Test pushing to a publishing repository with a failing prepushkey hook
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   218
17842
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   219
  $ cat > .hg/hgrc <<EOF
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   220
  > [web]
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   221
  > push_ssl = false
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   222
  > allow_push = *
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   223
  > [hooks]
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   224
  > prepushkey = sh -c "printenv.py prepushkey 1"
34836
537de0b14030 phase: use a binary phase part to push through bundle2 (BC)
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   225
  > [devel]
537de0b14030 phase: use a binary phase part to push through bundle2 (BC)
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   226
  > legacy.exchange=phases
17842
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   227
  > EOF
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   228
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   229
#if bundle1
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   230
Bundle1 works because a) phases are updated as part of changegroup application
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   231
and b) client checks phases after the "unbundle" command. Since it sees no
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   232
phase changes are necessary, it doesn't send the "pushkey" command and the
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   233
prepushkey hook never has to fire.
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   234
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   235
  $ req
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   236
  pushing to http://localhost:$HGPORT/
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   237
  searching for changes
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   238
  remote: adding changesets
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   239
  remote: adding manifests
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   240
  remote: adding file changes
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   241
  remote: added 1 changesets with 1 changes to 1 files
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   242
  % serve errors
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   243
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   244
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   245
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   246
#if bundle2
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   247
Bundle2 sends a "pushkey" bundle2 part. This runs as part of the transaction
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   248
and fails the entire push.
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   249
  $ req
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   250
  pushing to http://localhost:$HGPORT/
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   251
  searching for changes
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   252
  remote: adding changesets
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   253
  remote: adding manifests
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   254
  remote: adding file changes
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   255
  remote: added 1 changesets with 1 changes to 1 files
31815
7937dabb5447 tests: fix missing (glob) annotations in test-push-http.t
Augie Fackler <augie@google.com>
parents: 31747
diff changeset
   256
  remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1 HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
25390
14c6b4c6e3f9 test: use bundle2 in test-push-http
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24740
diff changeset
   257
  remote: pushkey-abort: prepushkey hook exited with status 1
25502
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   258
  remote: transaction abort!
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   259
  remote: rollback completed
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   260
  abort: updating ba677d0156c1 to public failed
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   261
  % serve errors
25502
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   262
  [255]
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   263
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   264
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   265
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   266
Now remove the failing prepushkey hook.
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   267
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   268
  $ cat >> .hg/hgrc <<EOF
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   269
  > [hooks]
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   270
  > prepushkey = sh -c "printenv.py prepushkey 0"
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   271
  > EOF
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   272
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   273
We don't need to test bundle1 because it succeeded above.
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   274
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   275
#if bundle2
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   276
  $ req
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   277
  pushing to http://localhost:$HGPORT/
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   278
  searching for changes
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   279
  remote: adding changesets
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   280
  remote: adding manifests
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   281
  remote: adding file changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   282
  remote: added 1 changesets with 1 changes to 1 files
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   283
  remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1 HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   284
  % serve errors
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   285
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   286
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   287
  $ hg --config extensions.strip= strip -r 1:
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   288
  saved backup bundle to $TESTTMP/test/.hg/strip-backup/ba677d0156c1-eea704d7-backup.hg
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   289
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   290
Now do a variant of the above, except on a non-publishing repository
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   291
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   292
  $ cat >> .hg/hgrc <<EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   293
  > [phases]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   294
  > publish = false
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   295
  > [hooks]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   296
  > prepushkey = sh -c "printenv.py prepushkey 1"
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   297
  > EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   298
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   299
#if bundle1
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   300
  $ req
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   301
  pushing to http://localhost:$HGPORT/
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   302
  searching for changes
25502
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   303
  remote: adding changesets
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   304
  remote: adding manifests
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   305
  remote: adding file changes
bd41c19383db phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25478
diff changeset
   306
  remote: added 1 changesets with 1 changes to 1 files
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   307
  remote: prepushkey hook: HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_OLD=1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   308
  remote: pushkey-abort: prepushkey hook exited with status 1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   309
  updating ba677d0156c1 to public failed!
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   310
  % serve errors
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   311
#endif
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   312
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   313
#if bundle2
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   314
  $ req
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   315
  pushing to http://localhost:$HGPORT/
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   316
  searching for changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   317
  remote: adding changesets
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   318
  remote: adding manifests
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   319
  remote: adding file changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   320
  remote: added 1 changesets with 1 changes to 1 files
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   321
  remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1 HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   322
  remote: pushkey-abort: prepushkey hook exited with status 1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   323
  remote: transaction abort!
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   324
  remote: rollback completed
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   325
  abort: updating ba677d0156c1 to public failed
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   326
  % serve errors
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   327
  [255]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   328
#endif
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   329
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   330
Make phases updates work
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   331
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   332
  $ cat >> .hg/hgrc <<EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   333
  > [hooks]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   334
  > prepushkey = sh -c "printenv.py prepushkey 0"
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   335
  > EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   336
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   337
#if bundle1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   338
  $ req
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   339
  pushing to http://localhost:$HGPORT/
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   340
  searching for changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   341
  no changes found
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   342
  remote: prepushkey hook: HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_OLD=1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   343
  % serve errors
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   344
  [1]
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   345
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   346
36243
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   347
#if bundle2
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   348
  $ req
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   349
  pushing to http://localhost:$HGPORT/
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   350
  searching for changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   351
  remote: adding changesets
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   352
  remote: adding manifests
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   353
  remote: adding file changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   354
  remote: added 1 changesets with 1 changes to 1 files
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   355
  remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1 HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   356
  % serve errors
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   357
#endif
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   358
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   359
  $ hg --config extensions.strip= strip -r 1:
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   360
  saved backup bundle to $TESTTMP/test/.hg/strip-backup/ba677d0156c1-eea704d7-backup.hg
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36242
diff changeset
   361
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   362
#if bundle2
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   363
33700
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   364
  $ cat > .hg/hgrc <<EOF
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   365
  > [web]
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   366
  > push_ssl = false
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   367
  > allow_push = *
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   368
  > [experimental]
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   369
  > httppostargs=true
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   370
  > EOF
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   371
  $ req
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   372
  pushing to http://localhost:$HGPORT/
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   373
  searching for changes
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   374
  remote: adding changesets
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   375
  remote: adding manifests
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   376
  remote: adding file changes
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   377
  remote: added 1 changesets with 1 changes to 1 files
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   378
  % serve errors
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   379
36242
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   380
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36241
diff changeset
   381
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15933
diff changeset
   382
  $ cd ..
37818
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   383
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   384
Pushing via hgwebdir works
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   385
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   386
  $ hg init hgwebdir
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   387
  $ cd hgwebdir
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   388
  $ echo 0 > a
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   389
  $ hg -q commit -A -m initial
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   390
  $ cd ..
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   391
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   392
  $ cat > web.conf << EOF
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   393
  > [paths]
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   394
  > / = *
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   395
  > [web]
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   396
  > push_ssl = false
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   397
  > allow_push = *
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   398
  > EOF
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   399
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   400
  $ hg serve --web-conf web.conf -p $HGPORT -d --pid-file hg.pid
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   401
  $ cat hg.pid > $DAEMON_PIDS
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   402
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   403
  $ hg clone http://localhost:$HGPORT/hgwebdir hgwebdir-local
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   404
  requesting all changes
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   405
  adding changesets
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   406
  adding manifests
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   407
  adding file changes
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   408
  added 1 changesets with 1 changes to 1 files
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   409
  new changesets 98a3f8f02ba7
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   410
  updating to branch default
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   411
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   412
  $ cd hgwebdir-local
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   413
  $ echo commit > a
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   414
  $ hg commit -m 'local commit'
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   415
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   416
  $ hg push
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   417
  pushing to http://localhost:$HGPORT/hgwebdir
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   418
  searching for changes
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   419
  remote: adding changesets
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   420
  remote: adding manifests
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   421
  remote: adding file changes
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   422
  remote: added 1 changesets with 1 changes to 1 files
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   423
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   424
  $ killdaemons.py
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   425
877185de62cf hgweb: reuse body file object when hgwebdir calls hgweb (issue5851)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37592
diff changeset
   426
  $ cd ..