Test::XML::Twig - Test XML::Twig handlers
use Test::XML::Twig tests => 2;
use My::Twig qw( handler );
test_twig_handler(
\&handler,
'<foo/>', '<bar/>',
'turns foo to bar',
);
test_twig_handlers(
{ twig_handlers => { 'foo' => \&handler } },
'<foo/>', '<bar/>',
'turns foo into bar',
);
This module is for testing XML::Twig handlers.
All functions are exported.
- get_twig ( INPUT [, ARGS ] )
- Return a parsed twig of INPUT, or undef on parse failure. Optionally, ARGS
may be supplied as a set of hash-like parameters to be passed into the
twig constructor.
- test_twig_handler ( HANDLER, INPUT, EXPECTED, TESTNAME [, COND ] )
- Parse INPUT, using HANDLER as a twig_handler (i.e: it gets called
after the parse tree has been built). Tests that the result is the same as
EXPECTED (which can be either a string of XML or a quoted regex). HANDLER
must be a code ref.
Optionally, COND can be supplied. Instead of the handler being
called with the root element of INPUT, COND will be used with
first_child() to select an alternative element.
Returns true / false depending upon test success.
- test_twig_handlers ( ARGS, INPUT, EXPECTED, TESTNAME )
- This is similiar to test_twig_handler(), but with more flexibility.
The first argument, ARGS, is a hash reference which can be used to specify
any of the ordinary parameters to twig's constructor. This lets you test
things like start_tag_handlers, as well as multiple
twig_handlers together.
Test::More, Test::XML, XML::Twig.
Dominic Mitchell, <cpan2 (at) semantico.com>
Copyright 2002 by semantico
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.