#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use Test::More;
use File::Temp 0.19;
use File::Copy;
use Path::Class;
use Locale::POFileManager;
{
my $dir = File::Temp->newdir;
my $from_dir = dir('t/data/utf8');
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;