-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl test.pl'
BEGIN {
- if (ord("A") == 193) {
- print "1..0 # Unicode::Normalize not ported to EBCDIC\n";
+ unless ("A" eq pack('U', 0x41) || "A" eq pack('U', ord("A"))) {
+ print "1..0 # Unicode::Normalize " .
+ "cannot stringify a Unicode code point\n";
exit 0;
}
}
+BEGIN {
+ if ($ENV{PERL_CORE}) {
+ chdir('t') if -d 't';
+ @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib);
+ }
+}
+
#########################
use Test;
use Unicode::Normalize qw(normalize);
ok(1); # If we made it this far, we're ok.
+sub _pack_U { Unicode::Normalize::pack_U(@_) }
+sub _unpack_U { Unicode::Normalize::unpack_U(@_) }
+
#########################
ok(normalize('C', ""), "");
sub hexNFC {
join " ", map sprintf("%04X", $_),
- unpack 'U*', normalize 'C', pack 'U*', map hex(), split ' ', shift;
+ _unpack_U normalize 'C', _pack_U map hex, split ' ', shift;
}
sub hexNFD {
join " ", map sprintf("%04X", $_),
- unpack 'U*', normalize 'NFD', pack 'U*', map hex(), split ' ', shift;
+ _unpack_U normalize 'D', _pack_U map hex, split ' ', shift;
}
ok(hexNFC("0061 0315 0300 05AE 05C4 0062"), "00E0 05AE 05C4 0315 0062");