1#!/usr/bin/perl
2# $File: //member/autrijus/Lingua-ZH-Toke/t/1-basic.t $ $Author: autrijus $
3# $Revision: #2 $ $Change: 9669 $ $DateTime: 2004/01/11 13:11:05 $
4
5use strict;
6use Test;
7
8BEGIN { plan tests => 20 }
9
10require Lingua::ZH::Toke;
11ok($Lingua::ZH::Toke::VERSION) if $Lingua::ZH::Toke::VERSION or 1;
12
13# Create Lingua::ZH::Toke::Sentence object (->Sentence also works)
14my $token = Lingua::ZH::Toke->new( '���H�o�b/�O������B/�q�o�N�����' );
15
16my $tmp = $token;
17
18# Easy tokenization via array deferencing
19ok($tmp = $tmp->[0], '���H�o�b',    'Tokenization - Fragment');
20ok($tmp = $tmp->[2], '�o�b',	    'Tokenization - Phrase');
21ok($tmp = $tmp->[0], '�o',	    'Tokenization - Character');
22ok($tmp = $tmp->[0], '��������',	    'Tokenization - Pronounciation');
23ok($tmp = $tmp->[2], '��',	    'Tokenization - Phonetic');
24
25# Magic histogram via hash deferencing
26ok($token->{"���H�o�b"},    1,	    'Histogram - Fragment');
27ok($token->{"�N�����"},    1,	    'Histogram - Phrase');
28ok($token->{"�o�N����"},    undef,  'Histogram - No Phrase');
29ok($token->{"��"},	    2,	    'Histogram - Character');
30ok($token->{"����"},	    2,	    'Histogram - Pronounciation');
31ok($token->{"��"},	    3,	    'Histogram - Phonetic');
32
33my @phrases = qw(�� �H �o�b �O�� ��� �B �q�o �N�����);
34
35# Iteration
36while ($tmp = <$token>) {	# iterate each fragment
37    while (<$tmp>) {		# iterate each phrase
38	ok($_, shift(@phrases), 'Iteration');
39    }
40}
41
421;
43