#!perl
use strict;
use warnings;
package RTF::Mokenizer;
use RTF::Tokenizer;
@RTF::Mokenizer::ISA = ("RTF::Tokenizer");
sub read_string {
my $self = shift;
$self->{_BUFFER} = q?\rtf1 Pete\'acPete\u45Pete?;
}
package Main;
use Test::More tests => 7;
my $tokenizer = RTF::Mokenizer->new();
$tokenizer->read_string();
ok( eq_array( [ $tokenizer->get_token() ], [ 'control', 'rtf', 1 ] ),
'\rtf1 read correctly' );
ok( eq_array( [ $tokenizer->get_token() ], [ 'text', 'Pete', '' ] ),
'Read text "Pete" correctly' );
ok( eq_array( [ $tokenizer->get_token() ], [ 'control', "'", 'ac' ] ),
'Read entity' );
ok( eq_array( [ $tokenizer->get_token() ], [ 'text', 'Pete', '' ] ),
'"Pete" read, which means entity delimiter used' );
ok( eq_array( [ $tokenizer->get_token() ], [ 'control', 'u', '45' ] ),
'u Control read, which means special u delim rules used' );
ok( eq_array( [ $tokenizer->get_token() ], [ 'text', 'Pete', '' ] ),
'"Pete" read, which means entity delimiter used' );
ok( $tokenizer->isa("RTF::Tokenizer"),
'$tokenizer is as RTF::Tokenizer object' );