6 use Test
::More tests
=> 19;
9 BEGIN { use_ok
('POE::Component::IRC::Plugin::Hello') };
13 my $mockirc = Test
::MockObject
->new;
14 $mockirc->mock(yield
=> sub { $hello_sent = 1 })->set_always(nick_name
=> 'hellobot');
16 my $self = POE
::Component
::IRC
::Plugin
::Hello
->new;
17 my $channels = [ '#chan' ];
20 my ($message, $expect, $comment) = @_;
22 $self->S_public($mockirc, \'mgv
!marius
@ieval.ro
', \$channels, \$message);
23 ok($hello_sent == $expect, $comment)
26 runtest 'privet
', 1, 'simple privet
';
27 runtest 'PrIvEt
', 1, 'privet
in mixed case
';
28 runtest ' privet
', 1, 'privet with spaces
';
29 runtest 'hellobot
: privet
', 1, 'addressed privet
';
30 runtest 'hellobot
: privet
', 1, 'addressed privet with spaces
';
31 runtest 'privet
!', 1, 'privet with exclamation mark
';
32 runtest 'privet
.', 1, 'privet with full stop
';
33 runtest 'ahoy
', 1, 'ahoy
';
34 runtest 'namaste
', 1, 'namaste
';
35 runtest 'neaţa
', 1, 'neaţa
(UTF
-8 test
)';
36 runtest 'こんにちは
', 1, 'こんにちは
(another UTF
-8 test
)';
37 runtest 'neața
', 1, 'neața
(UTF
-8 with combining comma below
)';
39 runtest 'salu
', 0, 'salu
(misspelling
)';
40 runtest 'hii
', 0, 'hii
(misspelling
)';
41 runtest 'neaţa mgv
', 0, 'neaţa mgv
(valid greeting with garbage after it
)';
42 runtest 'hi
,', 0, 'hi
, (bad punctuation
)';
44 $self = POE::Component::IRC::Plugin::Hello->new(greetings => ['sayonara
']);
45 runtest 'privet
', 0, 'custom greetings
- privet
';
46 runtest ' sayonara
', 1, 'custom greetings
- sayonara
';