diff options
author | Jesse Luehrs <doy@tozt.net> | 2010-02-24 22:43:39 -0600 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2010-02-24 22:44:28 -0600 |
commit | f044945710bcae60ee8069cdbf01e75b82bfb5d0 (patch) | |
tree | 35a95d2ed1961c39f35f9491a3a014ec2765fc98 | |
parent | a2855ff136611cedfac668f685902e3567240b57 (diff) | |
download | locale-pofilemanager-f044945710bcae60ee8069cdbf01e75b82bfb5d0.tar.gz locale-pofilemanager-f044945710bcae60ee8069cdbf01e75b82bfb5d0.zip |
add tests for proper unicode handling
-rw-r--r-- | t/004-utf8.t | 52 | ||||
-rw-r--r-- | t/data/004/en.po | 8 | ||||
-rw-r--r-- | t/data/004/hi.po | 11 |
3 files changed, 71 insertions, 0 deletions
diff --git a/t/004-utf8.t b/t/004-utf8.t new file mode 100644 index 0000000..9b716a8 --- /dev/null +++ b/t/004-utf8.t @@ -0,0 +1,52 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use utf8; +use Test::More; +use File::Temp; +use File::Copy; +use Path::Class; + +use Locale::POFileManager; + +{ + my $dir = File::Temp->newdir; + my $from_dir = dir('t/data/004'); + my $tmpdir = dir($dir->dirname); + for my $file ($from_dir->children) { + copy($file->stringify, $dir->dirname); + } + + { + my $manager = Locale::POFileManager->new( + base_dir => $dir->dirname, + canonical_language => 'hi', + ); + + is($manager->language_file('hi')->msgstr('नमस्ते'), + 'नमस्ते', + "got the right hindi translation"); + is($manager->language_file('en')->msgstr('नमस्ते'), + 'Hello', + "got the right english translation"); + ok(!$manager->language_file('en')->has_msgid('मेरा नाम'), + "no translation for this one"); + + $manager->add_stubs; + + ok($manager->language_file('en')->has_msgid('मेरा नाम'), + "correct stub added"); + } + + { + my $manager = Locale::POFileManager->new( + base_dir => $dir->dirname, + canonical_language => 'hi', + ); + + ok($manager->language_file('en')->has_msgid('मेरा नाम'), + "correct stub loaded"); + } +} + +done_testing; diff --git a/t/data/004/en.po b/t/data/004/en.po new file mode 100644 index 0000000..d9783c7 --- /dev/null +++ b/t/data/004/en.po @@ -0,0 +1,8 @@ +msgid "" +msgstr "" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "नमस्ते" +msgstr "Hello" diff --git a/t/data/004/hi.po b/t/data/004/hi.po new file mode 100644 index 0000000..5fd7b45 --- /dev/null +++ b/t/data/004/hi.po @@ -0,0 +1,11 @@ +msgid "" +msgstr "" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "मेरा नाम" +msgstr "मेरा नाम" + +msgid "नमस्ते" +msgstr "नमस्ते" |