use strict; use warnings; use Test::More tests => 19; #use Pod::Simple::Debug (5); BEGIN { require FindBin; unshift @INC, $FindBin::Bin . '/lib'; } use helpers; use Pod::Simple::DumpAsXML; use Pod::Simple::XMLOutStream; print "# Pod::Simple version $Pod::Simple::VERSION\n"; my $x = 'Pod::Simple::XMLOutStream'; $Pod::Simple::XMLOutStream::ATTR_PAD = ' '; $Pod::Simple::XMLOutStream::SORT_ATTRS = 1; # for predictably testable output sub moj {shift->accept_target('mojojojo')} sub mojtext {shift->accept_target_as_text('mojojojo')} sub any {shift->accept_target('*')} #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ is( $x->_out( "=pod\n\nI like pie.\n\n=for mojojojo stuff\n\nYup.\n"), 'I like pie.Yup.' ); is( $x->_out( "=pod\n\nI like pie.\n\n=for psketti,mojojojo,crunk stuff\n\nYup.\n"), 'I like pie.Yup.' ); is( $x->_out( "=pod\n\nI like pie.\n\n=for mojojojo I\n\nYup.\n"), 'I like pie.Yup.' ); is( $x->_out( "=pod\n\nI like pie.\n\n=for psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.Yup.' ); is( $x->_out( "=pod\n\nI like pie.\n\n=for :psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.Yup.' ); print "# Testing accept_target ...\n"; is( $x->_out( \&moj, "=pod\n\nI like pie.\n\n=for crunk stuff\n\nYup.\n"), 'I like pie.Yup.' ); is( $x->_out( \&moj, "=pod\n\nI like pie.\n\n=for mojojojo I\n\nYup.\n"), 'I like pie.I<stuff>Yup.' ); is( $x->_out( \&moj, "=pod\n\nI like pie.\n\n=for psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.I<stuff>Yup.' ); is( $x->_out( \&moj, "=pod\n\nI like pie.\n\n=for :mojojojo I\n\nYup.\n"), 'I like pie.stuffYup.' ); is( $x->_out( \&moj, "=pod\n\nI like pie.\n\n=for :psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.stuffYup.' ); print "# Testing accept_target_as_text ...\n"; is( $x->_out( \&mojtext, "=pod\n\nI like pie.\n\n=for mojojojo I\n\nYup.\n"), 'I like pie.stuffYup.' ); is( $x->_out( \&mojtext, "=pod\n\nI like pie.\n\n=for psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.stuffYup.' ); is( $x->_out( \&mojtext, "=pod\n\nI like pie.\n\n=for :mojojojo I\n\nYup.\n"), 'I like pie.stuffYup.' ); is( $x->_out( \&mojtext, "=pod\n\nI like pie.\n\n=for :psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.stuffYup.' ); print "# Testing accept_target(*) ...\n"; is( $x->_out( \&any, "=pod\n\nI like pie.\n\n=for mojojojo I\n\nYup.\n"), 'I like pie.I<stuff>Yup.' ); is( $x->_out( \&any, "=pod\n\nI like pie.\n\n=for mojojojo I\n\nYup.\n"), 'I like pie.I<stuff>Yup.' ); is( $x->_out( \&any, "=pod\n\nI like pie.\n\n=for psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.I<stuff>Yup.' ); is( $x->_out( \&any, "=pod\n\nI like pie.\n\n=for :mojojojo I\n\nYup.\n"), 'I like pie.stuffYup.' ); is( $x->_out( \&any, "=pod\n\nI like pie.\n\n=for :psketti,mojojojo,crunk I\n\nYup.\n"), 'I like pie.stuffYup.' );