#! /usr/local/bin/perl -w
BEGIN {
my
$package
;
if
($0 =~ /_pp\.t$/) {
$package
=
'gettext_pp'
;
}
else
{
$package
=
'gettext_xs'
;
}
my
$selected
= Locale::Messages->select_package (
$package
);
if
(
$selected
ne
$package
&&
'gettext_xs'
eq
$package
) {
print
"1..0 # Skip: Locale::$package not available here.\n"
;
exit
0;
}
plan
tests
=> NUM_TESTS;
}
my
$locale_dir
= $0;
$locale_dir
=~ s,[^/\\]+$,, or
$locale_dir
=
'.'
;
$locale_dir
.=
'/LocaleData'
;
Locale::Messages::nl_putenv (
"LANGUAGE=de_AT"
);
Locale::Messages::nl_putenv (
"LC_ALL=de_AT"
);
Locale::Messages::nl_putenv (
"LANG=de_AT"
);
Locale::Messages::nl_putenv (
"LC_MESSAGES=de_AT"
);
Locale::Messages::nl_putenv (
"OUTPUT_CHARSET=iso-8859-1"
);
Locale::Messages::setlocale (POSIX::LC_ALL() =>
''
);
my
$bound_dir
= bindtextdomain
existing
=>
$locale_dir
;
ok
defined
$bound_dir
;
ok (File::Spec->catdir (
$bound_dir
), File::Spec->catdir (
$locale_dir
));
$bound_dir
= bindtextdomain
additional
=>
$locale_dir
;
ok
defined
$bound_dir
;
ok (File::Spec->catdir (
$bound_dir
), File::Spec->catdir (
$locale_dir
));
my
$missing_locale
=
'locale de_AT missing'
;
my
$setlocale
= Locale::Messages::setlocale (POSIX::LC_ALL() =>
''
);
if
(
$setlocale
&&
$setlocale
=~ /(?:austria|at)/i) {
$missing_locale
=
''
;
}
else
{
$setlocale
= Locale::Util::set_locale (POSIX::LC_ALL(),
'de'
,
'AT'
);
if
(
$setlocale
&&
$setlocale
=~ /(?:austria|at)/i) {
$missing_locale
=
''
;
}
}
skip
$missing_locale
, dgettext (
existing
=>
'View'
),
'Anzeigen'
;
skip
$missing_locale
, dpgettext (
existing
=>
'Which folder would you like to view?'
,
'View'
),
'Ansicht'
;
skip
$missing_locale
, dpgettext (
existing
=>
'none'
,
'Not translated'
),
'Not translated'
;
skip
$missing_locale
, dpgettext (
additional
=>
'Context'
,
'Another View'
),
'Eine andere Ansicht mit Kontext'
;
skip
$missing_locale
, dpgettext (
additional
=>
'none'
,
'Not translated'
),
'Not translated'
;