Mercurial > hg
annotate tests/test-install.t @ 25777:1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
It's possible to have a branch/tag/bookmark with all kinds of special
characters, such as {}/\!?. While not very conveniently, symbolic revisions
with such characters work from command line if user correctly quotes the
characters. These characters also work in hgweb, when they are properly
encoded, with one exception: '/' (forward slash, urlencoded as '%2F'), which
was getting decoded before hgweb could parse it as a part of PATH_INFO.
Because of that, hgweb was seeing it as any other forward slash, that is, as
just another url parts separator.
For example, if user wanted to see the content of dir/file at bookmark
'feature/eggs', url could be: '/file/feature%2Feggs/dir/file'. But hgweb tried
to find a revision 'feature' and get contents of 'eggs/dir/file'.
To fix this, let's assume forward slashes are doubly-urlencoded (%252F), so
CGI/WSGI server decodes it into %2F. Then we can decode %2F in the revision
part of the url into an actual '/' character.
Making hgweb produce such urls will be done in the next 2 patches.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Sun, 12 Jul 2015 16:06:57 +0800 |
parents | be4915009b09 |
children | b1160299a175 |
rev | line source |
---|---|
4365
46280c004f22
change tests to use simplemerge by default
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3846
diff
changeset
|
1 hg debuginstall |
11917
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
2 $ hg debuginstall |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
3 checking encoding (ascii)... |
20741
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
4 checking Python executable (*) (glob) |
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
5 checking Python version (2.*) (glob) |
17392
bdd248666dbc
debuginstall: show directory for Python lib
Adrian Buehlmann <adrian@cadifra.com>
parents:
16934
diff
changeset
|
6 checking Python lib (*lib*)... (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
7 checking installed modules (*mercurial)... (glob) |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
8 checking templates (*mercurial?templates)... (glob) |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
9 checking commit editor... |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
10 checking username... |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
11 no problems detected |
9734
36c388a1aa51
commands: call ui.username carefully in debuginstall
Martin Geisler <mg@lazybytes.net>
parents:
4365
diff
changeset
|
12 |
11917
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
13 hg debuginstall with no username |
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
14 $ HGUSER= hg debuginstall |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
15 checking encoding (ascii)... |
20741
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
16 checking Python executable (*) (glob) |
f1dfef0a9352
debuginstall: change showing to checking for consistency and future checking
Matt Mackall <mpm@selenic.com>
parents:
20740
diff
changeset
|
17 checking Python version (2.*) (glob) |
17392
bdd248666dbc
debuginstall: show directory for Python lib
Adrian Buehlmann <adrian@cadifra.com>
parents:
16934
diff
changeset
|
18 checking Python lib (*lib*)... (glob) |
16934
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
19 checking installed modules (*mercurial)... (glob) |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
20 checking templates (*mercurial?templates)... (glob) |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
21 checking commit editor... |
0c9c41e53f1a
debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com>
parents:
15447
diff
changeset
|
22 checking username... |
20574
5614f8cf0861
ui: suggest config --edit when no username is set
Matt Mackall <mpm@selenic.com>
parents:
17392
diff
changeset
|
23 no username supplied |
12084 | 24 (specify a username in your configuration file) |
11917
b03cf2349a80
tests: unify test-install
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
9734
diff
changeset
|
25 1 problems detected, please check your install! |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12084
diff
changeset
|
26 [1] |
24891
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
27 |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
28 path variables are expanded (~ is the same as $TESTTMP) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
29 $ mkdir tools |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
30 $ touch tools/testeditor.exe |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
31 #if execbit |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
32 $ chmod 755 tools/testeditor.exe |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
33 #endif |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
34 $ hg debuginstall --config ui.editor=~/tools/testeditor.exe |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
35 checking encoding (ascii)... |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
36 checking Python executable (*) (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
37 checking Python version (*) (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
38 checking Python lib (*lib*)... (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
39 checking installed modules (*mercurial)... (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
40 checking templates (*mercurial?templates)... (glob) |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
41 checking commit editor... |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
42 checking username... |
be4915009b09
debuginstall: expand the editor path before searching for it (issue4380)
Matt Harbison <matt_harbison@yahoo.com>
parents:
20741
diff
changeset
|
43 no problems detected |