Mercurial > hg
annotate tests/test-oldcgi.t @ 42742:334c1ea57136
discovery: new devel.discovery.randomize option
By default, this is True, but setting it to False is a uniform
way to kill all randomness in integration tests such as test-setdiscovery.t
By "uniform" we mean that it can be passed to implementations in other
languages, for which the monkey-patching of random.sample would be
irrelevant.
In the above mentioned test file, we use it right away,
replacing the adhoc extension that had the same purpose, and to derandomize a
case with many round-trips, that we'll need to behave uniformly in the Rust
version.
Differential Revision: https://phab.mercurial-scm.org/D6427
author | Georges Racinet <georges.racinet@octobus.net> |
---|---|
date | Tue, 21 May 2019 17:44:15 +0200 |
parents | f5cb822625cc |
children | d5cd1fd690f3 |
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 > | |
11 > import cgitb, os, sys | |
12 > cgitb.enable() | |
13 > | |
14 > # sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install | |
15 > from mercurial import hgweb | |
16 > | |
39621
23b749b84b8a
py3: call hgweb.hgweb() with bytes values
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
33262
diff
changeset
|
17 > h = hgweb.hgweb(b"test", b"Empty test repository") |
12472 | 18 > h.run() |
19 > HGWEB | |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
20 |
12472 | 21 $ 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
|
22 |
12472 | 23 $ cat >hgweb.config <<HGWEBDIRCONF |
24 > [paths] | |
25 > test = test | |
26 > HGWEBDIRCONF | |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
27 |
12472 | 28 $ cat >hgwebdir.cgi <<HGWEBDIR |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
29 > #!"$PYTHON" |
12472 | 30 > # |
31 > # An example CGI script to export multiple hgweb repos, edit as necessary | |
32 > | |
33 > import cgitb, sys | |
34 > cgitb.enable() | |
35 > | |
36 > # sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install | |
37 > from mercurial import hgweb | |
38 > | |
39 > # The config file looks like this. You can have paths to individual | |
40 > # repos, collections of repos in a directory tree, or both. | |
41 > # | |
42 > # [paths] | |
43 > # virtual/path = /real/path | |
44 > # virtual/path = /real/path | |
45 > # | |
46 > # [collections] | |
47 > # /prefix/to/strip/off = /root/of/tree/full/of/repos | |
48 > # | |
49 > # collections example: say directory tree /foo contains repos /foo/bar, | |
50 > # /foo/quux/baz. Give this config section: | |
51 > # [collections] | |
52 > # /foo = /foo | |
53 > # Then repos will list as bar and quux/baz. | |
54 > | |
55 > # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples | |
56 > # or use a dictionary with entries like 'virtual/path': '/real/path' | |
57 > | |
41412
f5cb822625cc
tests: add b'' to config file name
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39707
diff
changeset
|
58 > h = hgweb.hgwebdir(b"hgweb.config") |
12472 | 59 > h.run() |
60 > HGWEBDIR | |
2533
589474a1dc36
Create a test to make sure old CGI scripts will still work.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
61 |
12472 | 62 $ 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
|
63 |
13269
aa3f726a2bdb
tests: remove duplication of the CGI environment variables
StevenGBrown
parents:
12472
diff
changeset
|
64 $ . "$TESTDIR/cgienv" |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
65 $ "$PYTHON" hgweb.cgi > page1 |
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
66 $ "$PYTHON" hgwebdir.cgi > page2 |
12472 | 67 |
68 $ PATH_INFO="/test/" | |
69 $ PATH_TRANSLATED="/var/something/test.cgi" | |
70 $ REQUEST_URI="/test/test/" | |
71 $ SCRIPT_URI="http://hg.omnifarious.org/test/test/" | |
72 $ SCRIPT_URL="/test/test/" | |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39621
diff
changeset
|
73 $ "$PYTHON" hgwebdir.cgi > page3 |
12472 | 74 |
75 $ grep -i error page1 page2 page3 | |
76 [1] |