po: fixed link to homepage from non-translation page

Added testcases for this bug.
It remains broken when generated from <TMPL_VAR BASEURL>, though.

Signed-off-by: intrigeri <intrigeri@boum.org>
master
intrigeri 2008-11-11 15:01:16 +01:00
parent 6b82ef44b0
commit cfe101fff9
2 changed files with 12 additions and 2 deletions

View File

@ -427,7 +427,6 @@ sub myurlto ($$;$) { #{{{
# workaround hard-coded /index.$config{htmlext} in IkiWiki::urlto()
if (! length $to
&& $config{po_link_to} eq "current"
&& istranslation($from)
&& istranslatable('index')) {
return IkiWiki::beautify_urlpath(IkiWiki::baseurl($from) . "index." . lang($from) . ".$config{htmlext}");
}

13
t/po.t
View File

@ -17,7 +17,7 @@ BEGIN {
}
}
use Test::More tests => 52;
use Test::More tests => 58;
BEGIN { use_ok("IkiWiki"); }
@ -144,6 +144,17 @@ is(targetpage('test1.fr', 'html'), 'test1/index.fr.html', "$msgprefix test1.fr")
is(targetpage('test3', 'html'), 'test3/index.html', "$msgprefix test3 (non-translatable page)");
is(targetpage('test3.es', 'html'), 'test3.es/index.html', "$msgprefix test3.es (non-translatable page)");
### urlto -> index
$config{po_link_to}='current';
$msgprefix="urlto (po_link_to=current)";
is(urlto('', 'index'), './index.en.html', "$msgprefix index -> ''");
is(urlto('', 'nontranslatable'), './../index.en.html', "$msgprefix nontranslatable -> ''");
is(urlto('', 'translatable.fr'), './../index.fr.html', "$msgprefix translatable.fr -> ''");
$msgprefix="urlto (po_link_to=negotiated)";
is(urlto('', 'index'), './index.en.html', "$msgprefix index -> ''");
is(urlto('', 'nontranslatable'), './../index.en.html', "$msgprefix nontranslatable -> ''");
is(urlto('', 'translatable.fr'), './../index.fr.html', "$msgprefix translatable.fr -> ''");
### bestlink
$config{po_link_to}='current';
$msgprefix="bestlink (po_link_to=current)";