summaryrefslogtreecommitdiffstats
path: root/t/004-utf8.t
diff options
context:
space:
mode:
Diffstat (limited to 't/004-utf8.t')
-rw-r--r--t/004-utf8.t52
1 files changed, 52 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;