diff options
author | Simon McVittie <smcv@debian.org> | 2019-01-31 19:50:14 +0000 |
---|---|---|
committer | Simon McVittie <smcv@debian.org> | 2019-01-31 20:37:06 +0000 |
commit | 2bd72cd0e01b8bb433b368e11ff9db779a21ccef (patch) | |
tree | 3e37af1bdd5c48e72838597f9837cc1071016bea | |
parent | 9c0694b14c0c8ed0dee4ff4ed57f689919707cd7 (diff) | |
download | ikiwiki-2bd72cd0e01b8bb433b368e11ff9db779a21ccef.tar ikiwiki-2bd72cd0e01b8bb433b368e11ff9db779a21ccef.tar.gz |
git-cgi.t: Add a failing test for a blog with a non-ASCII rootpage
This is one of several possible bug reports on
"doc/bugs/About %2F problem" (I'm not sure what the actual bug being
reported is).
Signed-off-by: Simon McVittie <smcv@debian.org>
-rwxr-xr-x | t/git-cgi.t | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/t/git-cgi.t b/t/git-cgi.t index dc0c30c5e..79cd62f61 100755 --- a/t/git-cgi.t +++ b/t/git-cgi.t @@ -167,6 +167,8 @@ sub test { write_old_file('doc/writable/three.bin', 't/tmp/in', 'An attachment'); write_old_file('doc/writable/blog.mdwn', 't/tmp/in', '[[!inline pages="writable/blog/*" actions=yes rootpage=writable/blog postform=yes show=0]]'); + write_old_file('doc/writable/__172__blog.mdwn', 't/tmp/in', + '[[!inline pages="writable/¬blog/*" actions=yes rootpage="writable/¬blog" postform=yes show=0]]'); unless ($installed) { ok(! system(qw(cp -pRL doc/wikiicons t/tmp/in/doc/))); @@ -329,6 +331,25 @@ sub test { }, ); like($content, qr{<option selected="selected" value="writable/blog/hello">writable/blog/hello</option>}); + + # This attempts to reproduce the bug from + # doc/bugs/About___37__2F_problem, in which you can't make new posts + # to a blog with a non-ASCII rootpage. + $content = readfile('t/tmp/out/writable/__172__blog/index.html'); + like($content, qr{<input type="hidden" name="from" value="writable/¬blog"}); + TODO: { + local $TODO = 'doc/bugs/About___37__2F_problem'; + $content = run_cgi(method => 'get', + params => { + do => 'blog', + from => 'writable/¬blog', + subpage => '1', + title => 'hello', + }, + ); + like($content, qr{<option selected="selected" value="writable/¬blog/hello">writable/¬blog/hello</option>}); + unlike($content, qr{Error: bad page name}); + } } test(); |