use Test::More tests => 10;
use strict;
use warnings;
use Text::Restructured;
use Text::Restructured::Writer::LibXML;
use XML::LibXML::XPathContext;
my $input=<<'EOF';
======
Test
======
:Author: dakkar
paragrafo
link_
.. _link: /gino/pino/
mathml: :mathml:`x^2`
.. mathml::
(x^2)/(y^2)
pre::
gino pino
rino
normale
EOF
my $opts={
D => {
generator => 0,
'source-link' => 0,
'time' => 0,
},
};
my $parser=Text::Restructured->new($opts,'gino');
my $dudom=$parser->Parse($input,'--inline--');
my $xdoc=Text::Restructured::Writer::LibXML->new->ProcessDOM($dudom);
my $ctx=XML::LibXML::XPathContext->new($xdoc);
$ctx->registerNs('m','http://www.w3.org/1998/Math/MathML');
sub xis {
my ($expr,$val,$comment)=@_;
is $ctx->findvalue($expr),
$val,
$comment||'';
}
xis '/document/@source','--inline--','Source name';
xis '/document/@title','Test','Title';
xis '/document/docinfo/author',"dakkar\n",'Author';
xis 'count(/document/paragraph)',6,'Paragraphs';
xis '/document/paragraph[1]',"paragrafo\n",'para 1';
xis '/document/paragraph[2]/reference/@refuri','/gino/pino/','Ref';
xis '/document/paragraph[3]/m:math','x2','MathML 1';
xis '/document/paragraph[4]/m:math','x2y2','MathML 2';
xis 'name(/document/paragraph[5]/following-sibling::*[1])','literal_block','Literal';
xis '/document/literal_block'," gino pino\nrino\n",'Literal content';