use Test::More tests => 11; BEGIN { use_ok('POE::Filter::IRCD') }; my $filter = POE::Filter::IRCD->new(); isa_ok( $filter, 'POE::Filter::IRCD' ); my $original = ':test!test@test.test PRIVMSG #Test :This is a test case'; foreach my $irc_event ( @{ $filter->get( [ $original ] ) } ) { ok( $irc_event->{prefix} eq 'test!test@test.test', 'Prefix Test' ); ok( $irc_event->{params}->[0] eq '#Test', 'Params Test One' ); ok( $irc_event->{params}->[1] eq 'This is a test case', 'Params Test Two' ); ok( $irc_event->{command} eq 'PRIVMSG', 'Command Test'); foreach my $parsed ( @{ $filter->put( [ $irc_event ] ) } ) { ok( $parsed eq $original, 'Self Test' ); } } my $filter2 = POE::Filter::IRCD->new( colonify => 1 ); isa_ok( $filter2, 'POE::Filter::IRCD' ); my $original2 = ':test!test@test.test PRIVMSG #Test :Test'; foreach my $irc_event ( @{ $filter2->get( [ $original2 ] ) } ) { foreach my $parsed ( @{ $filter2->put( [ $irc_event ] ) } ) { ok( $parsed eq $original2, 'Self Test' ); } } my $filter3 = $filter2->clone(); isa_ok( $filter3, 'POE::Filter::IRCD' ); foreach my $irc_event ( @{ $filter3->get( [ $original2 ] ) } ) { foreach my $parsed ( @{ $filter3->put( [ $irc_event ] ) } ) { ok( $parsed eq $original2, 'Self Test' ); } }