Mercurial > hg
annotate tests/test-hgweb-no-path-info.t @ 12748:d10369fefd01
alias: fail gracefully when invalid global options are given (issue2442)
This patch modifies the check for shell aliases to prevent crashing when an invalid
global option is given.
When an invalid global option is given the check will simply return and let the
normal error handling for this case happen.
author | Steve Losh <steve@stevelosh.com> |
---|---|
date | Sun, 17 Oct 2010 13:24:37 -0400 |
parents | 4c4aeaab2339 |
children | ffb5c09ba822 |
rev | line source |
---|---|
12438
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
1 This tests if hgweb and hgwebdir still work if the REQUEST_URI variable is |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
2 no longer passed with the request. Instead, SCRIPT_NAME and PATH_INFO |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
3 should be used from d74fc8dec2b4 onward to route the request. |
6459
8189e03adb44
hgweb: make hgwebdir work in the absence of PATH_INFO
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
4 |
12438
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
5 $ mkdir repo |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
6 $ cd repo |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
7 $ hg init |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
8 $ echo foo > bar |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
9 $ hg add bar |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
10 $ hg commit -m "test" |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
11 $ hg tip |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
12 changeset: 0:61c9426e69fe |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
13 tag: tip |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
14 user: test |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
15 date: Thu Jan 01 00:00:00 1970 +0000 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
16 summary: test |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
17 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
18 $ cat > request.py <<EOF |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
19 > from mercurial.hgweb import hgweb, hgwebdir |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
20 > from StringIO import StringIO |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
21 > import os, sys |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
22 > |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
23 > errors = StringIO() |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
24 > input = StringIO() |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
25 > |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
26 > def startrsp(status, headers): |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
27 > print '---- STATUS' |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
28 > print status |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
29 > print '---- HEADERS' |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
30 > print [i for i in headers if i[0] != 'ETag'] |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
31 > print '---- DATA' |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
32 > return output.write |
12438
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
33 > |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
34 > env = { |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
35 > 'wsgi.version': (1, 0), |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
36 > 'wsgi.url_scheme': 'http', |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
37 > 'wsgi.errors': errors, |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
38 > 'wsgi.input': input, |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
39 > 'wsgi.multithread': False, |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
40 > 'wsgi.multiprocess': False, |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
41 > 'wsgi.run_once': False, |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
42 > 'REQUEST_METHOD': 'GET', |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
43 > 'SCRIPT_NAME': '', |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
44 > 'SERVER_NAME': '127.0.0.1', |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
45 > 'SERVER_PORT': os.environ['HGPORT'], |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
46 > 'SERVER_PROTOCOL': 'HTTP/1.0' |
12438
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
47 > } |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
48 > |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
49 > def process(app): |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
50 > content = app(env, startrsp) |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
51 > sys.stdout.write(output.getvalue()) |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
52 > sys.stdout.write(''.join(content)) |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
53 > print '---- ERRORS' |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
54 > print errors.getvalue() |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
55 > |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
56 > output = StringIO() |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
57 > env['QUERY_STRING'] = 'style=atom' |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
58 > process(hgweb('.', name='repo')) |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
59 > |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
60 > output = StringIO() |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
61 > env['QUERY_STRING'] = 'style=raw' |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
62 > process(hgwebdir({'repo': '.'})) |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
63 > EOF |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
64 $ python request.py |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
65 ---- STATUS |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
66 200 Script output follows |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
67 ---- HEADERS |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
68 [('Content-Type', 'application/atom+xml; charset=ascii')] |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
69 ---- DATA |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
70 <?xml version="1.0" encoding="ascii"?> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
71 <feed xmlns="http://www.w3.org/2005/Atom"> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
72 <!-- Changelog --> |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12438
diff
changeset
|
73 <id>http://127.0.0.1:$HGPORT/</id> |
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12438
diff
changeset
|
74 <link rel="self" href="http://127.0.0.1:$HGPORT/atom-log"/> |
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12438
diff
changeset
|
75 <link rel="alternate" href="http://127.0.0.1:$HGPORT/"/> |
12438
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
76 <title>repo Changelog</title> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
77 <updated>1970-01-01T00:00:00+00:00</updated> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
78 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
79 <entry> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
80 <title>test</title> |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12438
diff
changeset
|
81 <id>http://127.0.0.1:$HGPORT/#changeset-61c9426e69fef294feed5e2bbfc97d39944a5b1c</id> |
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12438
diff
changeset
|
82 <link href="http://127.0.0.1:$HGPORT/rev/61c9426e69fe"/> |
12438
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
83 <author> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
84 <name>test</name> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
85 <email>test</email> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
86 </author> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
87 <updated>1970-01-01T00:00:00+00:00</updated> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
88 <published>1970-01-01T00:00:00+00:00</published> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
89 <content type="xhtml"> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
90 <div xmlns="http://www.w3.org/1999/xhtml"> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
91 <pre xml:space="preserve">test</pre> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
92 </div> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
93 </content> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
94 </entry> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
95 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
96 </feed> |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
97 ---- ERRORS |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
98 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
99 ---- STATUS |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
100 200 Script output follows |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
101 ---- HEADERS |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
102 [('Content-Type', 'text/plain; charset=ascii')] |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
103 ---- DATA |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
104 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
105 repo/ |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
106 |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
107 ---- ERRORS |
922d2078017a
tests: unify test-hgweb-no-path-info
Matt Mackall <mpm@selenic.com>
parents:
12183
diff
changeset
|
108 |