#!perl
use strict;
use utf8;
use Test::More qw(no_plan);
use Encode;
BEGIN
{
use_ok("Text::MeCab");
}
my $data = encode(Text::MeCab::ENCODING, "太郎は次郎が持っている本を花子に渡した。");
my $mecab = Text::MeCab->new({
all_morphs => 1
});
ok($mecab);
my @fields = qw(surface feature length cost);
if (&Text::MeCab::MECAB_VERSION >= 0.90) {
push @fields, qw(rcattr lcattr stat isbest alpha beta prob wcost);
}
for (
my $node = $mecab->parse($data);
$node;
$node = $node->next
) {
foreach my $field (@fields) {
my $p = eval { $node->$field };
ok(!$@, "$field ok (" . (defined $p ?
encode_utf8(decode(Text::MeCab::ENCODING, $p)) : "(null)") . ")");
}
}
$mecab = Text::MeCab->new({
all_morphs => 1
});
ok($mecab);
for (
my $node = $mecab->parse($data);
$node;
$node = $node->next
) {
foreach my $field (@fields) {
my $p = eval { $node->$field };
ok(!$@, "$field encoded ok (" . (defined $p ?
encode_utf8(decode(Text::MeCab::ENCODING, $p)) : "(null)") . ")");
}
}
1;