Mercurial > hg
annotate tests/test-newcgi.t @ 12765:5eed9ceebd64
merge: when --tool is specified, disable HGMERGE by setting to empty string
HGMERGE has different semantics than ui.merge. HGMERGE should hold the name
on an executable in your path, or an absolute tool path. As such, it's not
safe to simply copy the user's specified --tool value into HGMERGE. Instead,
we disable HGMERGE by setting it to an empty string.
author | Steve Borho <steve@borho.org> |
---|---|
date | Mon, 18 Oct 2010 23:20:14 -0500 |
parents | 4c4aeaab2339 |
children | aa3f726a2bdb |
rev | line source |
---|---|
12470 | 1 This tests if CGI files from after d0db3462d568 but |
2 before d74fc8dec2b4 still work. | |
5577
e0173902c813
CGI compatibility fix for d74fc8dec2b4.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
3 |
12470 | 4 $ hg init test |
5 $ cat >hgweb.cgi <<HGWEB | |
6 > #!/usr/bin/env python | |
7 > # | |
8 > # An example CGI script to use hgweb, edit as necessary | |
9 > | |
10 > import cgitb | |
11 > cgitb.enable() | |
12 > | |
13 > from mercurial import demandimport; demandimport.enable() | |
14 > from mercurial.hgweb import hgweb | |
15 > from mercurial.hgweb import wsgicgi | |
16 > from mercurial.hgweb.request import wsgiapplication | |
17 > | |
18 > def make_web_app(): | |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12470
diff
changeset
|
19 > return hgweb("test", "Empty test repository") |
12470 | 20 > |
21 > wsgicgi.launch(wsgiapplication(make_web_app)) | |
22 > HGWEB | |
5577
e0173902c813
CGI compatibility fix for d74fc8dec2b4.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
23 |
12470 | 24 $ chmod 755 hgweb.cgi |
5577
e0173902c813
CGI compatibility fix for d74fc8dec2b4.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
25 |
12470 | 26 $ cat >hgweb.config <<HGWEBDIRCONF |
27 > [paths] | |
28 > test = test | |
29 > HGWEBDIRCONF | |
5577
e0173902c813
CGI compatibility fix for d74fc8dec2b4.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
30 |
12470 | 31 $ cat >hgwebdir.cgi <<HGWEBDIR |
32 > #!/usr/bin/env python | |
33 > # | |
34 > # An example CGI script to export multiple hgweb repos, edit as necessary | |
35 > | |
36 > import cgitb | |
37 > cgitb.enable() | |
38 > | |
39 > from mercurial import demandimport; demandimport.enable() | |
40 > from mercurial.hgweb import hgwebdir | |
41 > from mercurial.hgweb import wsgicgi | |
42 > from mercurial.hgweb.request import wsgiapplication | |
43 > | |
44 > def make_web_app(): | |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12470
diff
changeset
|
45 > return hgwebdir("hgweb.config") |
12470 | 46 > |
47 > wsgicgi.launch(wsgiapplication(make_web_app)) | |
48 > HGWEBDIR | |
5577
e0173902c813
CGI compatibility fix for d74fc8dec2b4.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
49 |
12470 | 50 $ chmod 755 hgwebdir.cgi |
5577
e0173902c813
CGI compatibility fix for d74fc8dec2b4.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
51 |
12470 | 52 $ DOCUMENT_ROOT="/var/www/hg"; export DOCUMENT_ROOT |
53 $ GATEWAY_INTERFACE="CGI/1.1"; export GATEWAY_INTERFACE | |
54 $ HTTP_ACCEPT="text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; export HTTP_ACCEPT | |
55 $ HTTP_ACCEPT_CHARSET="ISO-8859-1,utf-8;q=0.7,*;q=0.7"; export HTTP_ACCEPT_CHARSET | |
56 $ HTTP_ACCEPT_ENCODING="gzip,deflate"; export HTTP_ACCEPT_ENCODING | |
57 $ HTTP_ACCEPT_LANGUAGE="en-us,en;q=0.5"; export HTTP_ACCEPT_LANGUAGE | |
58 $ HTTP_CACHE_CONTROL="max-age=0"; export HTTP_CACHE_CONTROL | |
59 $ HTTP_CONNECTION="keep-alive"; export HTTP_CONNECTION | |
60 $ HTTP_HOST="hg.omnifarious.org"; export HTTP_HOST | |
61 $ HTTP_KEEP_ALIVE="300"; export HTTP_KEEP_ALIVE | |
62 $ HTTP_USER_AGENT="Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.0.4) Gecko/20060608 Ubuntu/dapper-security Firefox/1.5.0.4"; export HTTP_USER_AGENT | |
63 $ PATH_INFO="/"; export PATH_INFO | |
64 $ PATH_TRANSLATED="/var/www/hg/index.html"; export PATH_TRANSLATED | |
65 $ QUERY_STRING=""; export QUERY_STRING | |
66 $ REMOTE_ADDR="127.0.0.2"; export REMOTE_ADDR | |
67 $ REMOTE_PORT="44703"; export REMOTE_PORT | |
68 $ REQUEST_METHOD="GET"; export REQUEST_METHOD | |
69 $ REQUEST_URI="/test/"; export REQUEST_URI | |
70 $ SCRIPT_FILENAME="/home/hopper/hg_public/test.cgi"; export SCRIPT_FILENAME | |
71 $ SCRIPT_NAME="/test"; export SCRIPT_NAME | |
72 $ SCRIPT_URI="http://hg.omnifarious.org/test/"; export SCRIPT_URI | |
73 $ SCRIPT_URL="/test/"; export SCRIPT_URL | |
74 $ SERVER_ADDR="127.0.0.1"; export SERVER_ADDR | |
75 $ SERVER_ADMIN="eric@localhost"; export SERVER_ADMIN | |
76 $ SERVER_NAME="hg.omnifarious.org"; export SERVER_NAME | |
77 $ SERVER_PORT="80"; export SERVER_PORT | |
78 $ SERVER_PROTOCOL="HTTP/1.1"; export SERVER_PROTOCOL | |
79 $ SERVER_SIGNATURE="<address>Apache/2.0.53 (Fedora) Server at hg.omnifarious.org Port 80</address>"; export SERVER_SIGNATURE | |
80 $ SERVER_SOFTWARE="Apache/2.0.53 (Fedora)"; export SERVER_SOFTWARE | |
81 | |
82 $ python hgweb.cgi > page1 | |
83 $ python hgwebdir.cgi > page2 | |
84 | |
85 $ PATH_INFO="/test/" | |
86 $ PATH_TRANSLATED="/var/something/test.cgi" | |
87 $ REQUEST_URI="/test/test/" | |
88 $ SCRIPT_URI="http://hg.omnifarious.org/test/test/" | |
89 $ SCRIPT_URL="/test/test/" | |
90 $ python hgwebdir.cgi > page3 | |
91 | |
92 $ grep -i error page1 page2 page3 | |
93 [1] |