From 202c4d522f9f83d0e439b3846fb6a90e4eebee59 Mon Sep 17 00:00:00 2001 From: joey Date: Thu, 15 Jun 2006 06:37:33 +0000 Subject: * -CSD does not affect modules, so readfile() was not using the utf-8 input layer, which led to lots of problems; make it force read files as utf-8. Closes: #373203 * writefile() likewise needs to use the utf8 output layer. * Remove the -CSD from ikiwiki's hashbang since it's useless to have it there. * Revert some of the decode_utf8 changes in CGI.pm that seem unnecessary given the readfile fix. * Add utf-8 testcases for readfile and htmlize. --- t/htmlize.t | 19 +++++++++++++++++++ t/readfile.t | 12 ++++++++++++ t/test1.mdwn | 2 ++ 3 files changed, 33 insertions(+) create mode 100755 t/htmlize.t create mode 100755 t/readfile.t create mode 100644 t/test1.mdwn (limited to 't') diff --git a/t/htmlize.t b/t/htmlize.t new file mode 100755 index 000000000..465004bc1 --- /dev/null +++ b/t/htmlize.t @@ -0,0 +1,19 @@ +#!/usr/bin/perl +use warnings; +use strict; +use Test::More tests => 4; +use Encode; + +BEGIN { use_ok("IkiWiki"); } +BEGIN { use_ok("IkiWiki::Render"); } + +# Initialize htmlscrubber plugin +%IkiWiki::config=IkiWiki::defaultconfig(); +$IkiWiki::config{srcdir}=$IkiWiki::config{destdir}="/dev/null"; +IkiWiki::checkconfig(); + +is(IkiWiki::htmlize(".mdwn", "foo\n\nbar\n"), "

foo

\n\n

bar

\n", + "basic"); +is(IkiWiki::htmlize(".mdwn", IkiWiki::readfile("t/test1.mdwn")), + Encode::decode_utf8(qq{

o\nóóóóó

\n}), + "utf8; bug #373203"); diff --git a/t/readfile.t b/t/readfile.t new file mode 100755 index 000000000..5332f4c35 --- /dev/null +++ b/t/readfile.t @@ -0,0 +1,12 @@ +#!/usr/bin/perl +use warnings; +use strict; +use Test::More tests => 3; +use Encode; + +BEGIN { use_ok("IkiWiki"); } + +# should read files as utf8 +ok(Encode::is_utf8(IkiWiki::readfile("t/test1.mdwn"), 1)); +is(IkiWiki::readfile("t/test1.mdwn"), + Encode::decode_utf8('![o](../images/o.jpg "ó")'."\n".'óóóóó'."\n")); diff --git a/t/test1.mdwn b/t/test1.mdwn new file mode 100644 index 000000000..f4ebc2c08 --- /dev/null +++ b/t/test1.mdwn @@ -0,0 +1,2 @@ +![o](../images/o.jpg "ó") +óóóóó -- cgit v1.2.3