Mercurial > hg
annotate tests/test-oldcgi.t @ 51610:6c39edd1d348 stable
re2: make errors quiet
By default, the re2 library will output error on its own instead of keeping the
error in an exception. This make re2 printing spurious error before fallback to
the stdlib remodule that may accept the pattern or also fails to parse it and
raise a proper error that will be handled by Mercurial.
So we also pass an Option object that changes this default.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 02 May 2024 02:20:42 +0200 |
parents | d5cd1fd690f3 |
children |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
15567
diff
changeset
|
1 #require no-msys # MSYS will translate web paths as if they were file paths |
15567
8b84d040d9f9
tests: introduce 'hghave msys' to skip tests that would fail because of msys
Mads Kiilerich <mads@kiilerich.com>
parents:
13269
diff
changeset
|
2 |
12472 | 3 This tests if CGI files from before d0db3462d568 still work. |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
4 |
12472 | 5 $ hg init test |
6 $ cat >hgweb.cgi <<HGWEB | |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
7 > #!"$PYTHON" |
12472 | 8 > # |
9 > # An example CGI script to use hgweb, edit as necessary | |
10 > | |
50734
d5cd1fd690f3
hgweb: drop references to deprecated cgitb
Mads Kiilerich <mads@kiilerich.com>
parents:
41412
diff
changeset
|
11 > import os, sys |
12472 | 12 > |
13 > # sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install | |
14 > from mercurial import hgweb | |
15 > | |
39621
23b749b84b8a
py3: call hgweb.hgweb() with bytes values
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
33262
diff
changeset
|
16 > h = hgweb.hgweb(b"test", b"Empty test repository") |
12472 | 17 > h.run() |
18 > HGWEB | |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
19 |
12472 | 20 $ chmod 755 hgweb.cgi |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
21 |
12472 | 22 $ cat >hgweb.config <<HGWEBDIRCONF |
23 > [paths] | |
24 > test = test | |
25 > HGWEBDIRCONF | |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
26 |
12472 | 27 $ cat >hgwebdir.cgi <<HGWEBDIR |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
28 > #!"$PYTHON" |
12472 | 29 > # |
30 > # An example CGI script to export multiple hgweb repos, edit as necessary | |
31 > | |
50734
d5cd1fd690f3
hgweb: drop references to deprecated cgitb
Mads Kiilerich <mads@kiilerich.com>
parents:
41412
diff
changeset
|
32 > import sys |
12472 | 33 > |
34 > # sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install | |
35 > from mercurial import hgweb | |
36 > | |
37 > # The config file looks like this. You can have paths to individual | |
38 > # repos, collections of repos in a directory tree, or both. | |
39 > # | |
40 > # [paths] | |
41 > # virtual/path = /real/path | |
42 > # virtual/path = /real/path | |
43 > # | |
44 > # [collections] | |
45 > # /prefix/to/strip/off = /root/of/tree/full/of/repos | |
46 > # | |
47 > # collections example: say directory tree /foo contains repos /foo/bar, | |
48 > # /foo/quux/baz. Give this config section: | |
49 > # [collections] | |
50 > # /foo = /foo | |
51 > # Then repos will list as bar and quux/baz. | |
52 > | |
53 > # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples | |
54 > # or use a dictionary with entries like 'virtual/path': '/real/path' | |
55 > | |
41412
f5cb822625cc
tests: add b'' to config file name
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39707
diff
changeset
|
56 > h = hgweb.hgwebdir(b"hgweb.config") |
12472 | 57 > h.run() |
58 > HGWEBDIR | |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
59 |
12472 | 60 $ chmod 755 hgwebdir.cgi |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
61 |
13269
aa3f726a2bdb
tests: remove duplication of the CGI environment variables
StevenGBrown
parents:
12472
diff
changeset
|
62 $ . "$TESTDIR/cgienv" |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
63 $ "$PYTHON" hgweb.cgi > page1 |
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
64 $ "$PYTHON" hgwebdir.cgi > page2 |
12472 | 65 |
66 $ PATH_INFO="/test/" | |
67 $ PATH_TRANSLATED="/var/something/test.cgi" | |
68 $ REQUEST_URI="/test/test/" | |
69 $ SCRIPT_URI="http://hg.omnifarious.org/test/test/" | |
70 $ SCRIPT_URL="/test/test/" | |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
71 $ "$PYTHON" hgwebdir.cgi > page3 |
12472 | 72 |
73 $ grep -i error page1 page2 page3 | |
74 [1] |