tests/test-push-http.t
author Gregory Szorc <gregory.szorc@gmail.com>
Tue, 13 Mar 2018 08:58:52 -0700
changeset 37011 16203c6079e7
parent 35844 2c647da851ed
child 37414 2d965bfeb8f6
permissions -rw-r--r--
tests: use $HTTP_DATE$ for Date header Support for the $HTTP_DATE$ substitution was recently added. Let's adopt it more widely. We had to tweak the substitution to be case insensitive, since HTTP headers are case insensitive. I also found a minor test issue not globbing over the length of the Server response header. Differential Revision: https://phab.mercurial-scm.org/D2839
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
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
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: 35825
diff changeset
     4
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
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: 35825
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: 35825
diff changeset
     7
  > [devel]
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
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: 35825
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: 35825
diff changeset
    10
  > EOF
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
    11
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
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() {
12743
4c4aeaab2339 check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 12643
diff changeset
    26
  >     hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log
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
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
    73
  $ 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
    74
  > allow_push = *
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
    75
  > [hooks]
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
    76
  > 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
    77
  > pushkey = sh -c "printenv.py pushkey 0"
34938
aa05b95949fe tests: adjust hooks for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 34876
diff changeset
    78
  > 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
    79
  > EOF
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    80
  $ req
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12483
diff changeset
    81
  pushing to http://localhost:$HGPORT/
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    82
  searching for changes
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    83
  remote: adding changesets
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    84
  remote: adding manifests
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    85
  remote: adding file changes
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    86
  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
    87
  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
    88
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
    89
  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: 35825
diff changeset
    90
  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 !)
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    91
  % serve errors
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    92
  $ hg rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13405
diff changeset
    93
  repository tip rolled back to revision 0 (undo serve)
12483
fecd4966f8d4 tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents: 11469
diff changeset
    94
14093
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
    95
expect success, server lacks the httpheader capability
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
    96
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
    97
  $ CAP=httpheader
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
    98
  $ . "$TESTDIR/notcapable"
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
    99
  $ req
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   100
  pushing to http://localhost:$HGPORT/
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   101
  searching for changes
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   102
  remote: adding changesets
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   103
  remote: adding manifests
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   104
  remote: adding file changes
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   105
  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
   106
  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
   107
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   108
  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: 35825
diff changeset
   109
  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
   110
  % serve errors
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   111
  $ hg rollback
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   112
  repository tip rolled back to revision 0 (undo serve)
ce99d887585f httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents: 14011
diff changeset
   113
13946
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   114
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
   115
14011
b69471bdb678 tests: add script to disable a selected wire protocol capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13946
diff changeset
   116
  $ CAP=unbundlehash
b69471bdb678 tests: add script to disable a selected wire protocol capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13946
diff changeset
   117
  $ . "$TESTDIR/notcapable"
13946
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   118
  $ req
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   119
  pushing to http://localhost:$HGPORT/
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   120
  searching for changes
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   121
  remote: adding changesets
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   122
  remote: adding manifests
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   123
  remote: adding file changes
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   124
  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
   125
  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
   126
  remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872:   -> public
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   127
  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: 35825
diff changeset
   128
  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
   129
  % serve errors
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   130
  $ hg rollback
3c2f9f611ef6 tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents: 13449
diff changeset
   131
  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
   132
35825
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   133
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
   134
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
   135
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   136
  $ 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
   137
  > 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
   138
  > 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
   139
  >     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
   140
  >         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
   141
  >     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
   142
  > 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
   143
  >     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
   144
  > EOF
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   145
  $ 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
   146
  $ 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
   147
  > [extensions]
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   148
  > 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
   149
  > EOF
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   150
  $ req
fefd57bd9573 tests: port value-less unbundle capability test to test-push-http.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34938
diff changeset
   151
  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
   152
  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
   153
  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
   154
  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
   155
  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
   156
  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
   157
  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
   158
  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
   159
  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
   160
  % 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
   161
  $ 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
   162
  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
   163
  $ 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
   164
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   165
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
   166
17842
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   167
  $ cat > .hg/hgrc <<EOF
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   168
  > [web]
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   169
  > push_ssl = false
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   170
  > allow_push = *
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   171
  > [hooks]
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   172
  > 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
   173
  > [devel]
537de0b14030 phase: use a binary phase part to push through bundle2 (BC)
Boris Feld <boris.feld@octobus.net>
parents: 34710
diff changeset
   174
  > legacy.exchange=phases
17842
a029dac38942 test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 17793
diff changeset
   175
  > EOF
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   176
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   177
#if bundle1
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   178
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: 35826
diff changeset
   179
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: 35826
diff changeset
   180
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: 35826
diff changeset
   181
prepushkey hook never has to fire.
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   182
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   183
  $ req
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   184
  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: 35825
diff changeset
   185
  searching for changes
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   186
  remote: adding changesets
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   187
  remote: adding manifests
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   188
  remote: adding file changes
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   189
  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: 35825
diff changeset
   190
  % serve errors
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   191
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   192
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   193
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   194
#if bundle2
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   195
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: 35826
diff changeset
   196
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
   197
  $ req
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   198
  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
   199
  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
   200
  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
   201
  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
   202
  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
   203
  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: 31752
diff changeset
   204
  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
   205
  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
   206
  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
   207
  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
   208
  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
   209
  % 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
   210
  [255]
17793
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   211
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   212
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   213
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   214
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
   215
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   216
  $ cat >> .hg/hgrc <<EOF
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   217
  > [hooks]
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27739
diff changeset
   218
  > 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
   219
  > EOF
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   220
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   221
We don't need to test bundle1 because it succeeded above.
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   222
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   223
#if bundle2
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   224
  $ req
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   225
  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: 35825
diff changeset
   226
  searching for changes
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   227
  remote: adding changesets
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   228
  remote: adding manifests
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   229
  remote: adding file changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   230
  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: 35826
diff changeset
   231
  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)
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   232
  % serve errors
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   233
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   234
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   235
  $ hg --config extensions.strip= strip -r 1:
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   236
  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: 35826
diff changeset
   237
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   238
Now do a variant of the above, except on a non-publishing repository
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   239
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   240
  $ cat >> .hg/hgrc <<EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   241
  > [phases]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   242
  > publish = false
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   243
  > [hooks]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   244
  > prepushkey = sh -c "printenv.py prepushkey 1"
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   245
  > EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   246
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   247
#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
   248
  $ req
8474be4412ca wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 17565
diff changeset
   249
  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
   250
  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
   251
  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
   252
  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
   253
  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
   254
  remote: added 1 changesets with 1 changes to 1 files
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   255
  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: 35826
diff changeset
   256
  remote: pushkey-abort: prepushkey hook exited with status 1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   257
  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
   258
  % serve errors
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   259
#endif
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   260
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   261
#if bundle2
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   262
  $ req
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   263
  pushing to http://localhost:$HGPORT/
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   264
  searching for changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   265
  remote: adding changesets
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   266
  remote: adding manifests
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   267
  remote: adding file changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   268
  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: 35826
diff changeset
   269
  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: 35826
diff changeset
   270
  remote: pushkey-abort: prepushkey hook exited with status 1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   271
  remote: transaction abort!
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   272
  remote: rollback completed
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   273
  abort: updating ba677d0156c1 to public failed
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   274
  % serve errors
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   275
  [255]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   276
#endif
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   277
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   278
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
   279
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   280
  $ cat >> .hg/hgrc <<EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   281
  > [hooks]
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   282
  > prepushkey = sh -c "printenv.py prepushkey 0"
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   283
  > EOF
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   284
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   285
#if bundle1
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   286
  $ req
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   287
  pushing to http://localhost:$HGPORT/
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   288
  searching for changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   289
  no changes found
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   290
  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: 35826
diff changeset
   291
  % serve errors
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   292
  [1]
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   293
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   294
35827
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   295
#if bundle2
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   296
  $ req
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   297
  pushing to http://localhost:$HGPORT/
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   298
  searching for changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   299
  remote: adding changesets
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   300
  remote: adding manifests
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   301
  remote: adding file changes
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   302
  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: 35826
diff changeset
   303
  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: 35826
diff changeset
   304
  % serve errors
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   305
#endif
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   306
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   307
  $ hg --config extensions.strip= strip -r 1:
c19e66dacaa1 tests: expand test coverage for updating phases
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35826
diff changeset
   308
  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: 35826
diff changeset
   309
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   310
#if bundle2
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   311
33726
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   312
  $ cat > .hg/hgrc <<EOF
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   313
  > [web]
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   314
  > push_ssl = false
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   315
  > allow_push = *
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   316
  > [experimental]
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   317
  > httppostargs=true
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   318
  > EOF
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   319
  $ req
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   320
  pushing to http://localhost:$HGPORT/
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   321
  searching for changes
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   322
  remote: adding changesets
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   323
  remote: adding manifests
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   324
  remote: adding file changes
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   325
  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
   326
  % serve errors
970967e0a917 http: add a test of actually pushing with httppostargs
Augie Fackler <augie@google.com>
parents: 31815
diff changeset
   327
35826
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   328
#endif
477280637646 tests: consolidate test-push-http.t and test-push-http-bundle1.t
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35825
diff changeset
   329
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15933
diff changeset
   330
  $ cd ..