XML-LibXML
view release on metacpan or search on metacpan
}
{
# appending empty fragment
my $doc = XML::LibXML::Document->new();
my $frag = $doc->createDocumentFragment();
my $root = $doc->createElement( 'foo' );
my $r = $root->appendChild( $frag );
# TEST
ok( $r, ' TODO : Add test name' );
}
{
my $doc = XML::LibXML::Document->new('1.0', 'UTF-8');
my $schema = $doc->createElement('sphinx:schema');
eval { $schema->appendChild( $schema ) };
# TEST
like ($@, qr/HIERARCHY_REQUEST_ERR/,
' Thrown HIERARCHY_REQUEST_ERR exception'
);
}
{
my $doc = XML::LibXML::Document->new('1.0', 'UTF-8');
my $attr = $doc->createAttribute('test','bar');
my $ent = $doc->createEntityReference('foo');
my $text = $doc->createTextNode('baz');
$attr->appendChild($ent);
$attr->appendChild($text);
# TEST
ok($attr->toString() eq ' test="bar&foo;baz"', ' TODO : Add test name');
}
{
my $string = <<'EOF';
<r>
<a/>
<b/>
<![CDATA[
]]>
<!-- foo -->
<![CDATA[
x
]]>
<?foo bar?>
<c/>
text
</r>
EOF
# TEST:$count=2;
foreach my $arg_to_parse ($string, \$string)
{
my $doc = XML::LibXML->load_xml(string=>$arg_to_parse);
my $r = $doc->getDocumentElement;
# TEST*$count
ok($r, ' TODO : Add test name');
my @nonblank = $r->nonBlankChildNodes;
# TEST*$count
is(join(',',map $_->nodeName,@nonblank), 'a,b,#comment,#cdata-section,foo,c,#text', ' TODO : Add test name' );
# TEST*$count
is($r->firstChild->nodeName, '#text', ' TODO : Add test name');
my @all = $r->childNodes;
# TEST*$count
is(join(',',map $_->nodeName,@all), '#text,a,#text,b,#text,#cdata-section,#text,#comment,#text,#cdata-section,#text,foo,#text,c,#text', ' TODO : Add test name' );
my $f = $r->firstNonBlankChild;
my $p;
# TEST*$count
is($f->nodeName, 'a', ' TODO : Add test name');
# TEST*$count
is($f->nextSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
is($f->previousSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
ok( !$f->previousNonBlankSibling, ' TODO : Add test name' );
$p = $f;
$f=$f->nextNonBlankSibling;
# TEST*$count
is($f->nodeName, 'b', ' TODO : Add test name');
# TEST*$count
is($f->nextSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
ok( $f->previousNonBlankSibling->isSameNode($p), ' TODO : Add test name' );
$p = $f;
$f=$f->nextNonBlankSibling;
# TEST*$count
ok($f->isa('XML::LibXML::Comment'), ' TODO : Add test name');
# TEST*$count
is($f->nextSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
ok( $f->previousNonBlankSibling->isSameNode($p), ' TODO : Add test name' );
$p = $f;
$f=$f->nextNonBlankSibling;
# TEST*$count
ok($f->isa('XML::LibXML::CDATASection'), ' TODO : Add test name');
# TEST*$count
is($f->nextSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
ok( $f->previousNonBlankSibling->isSameNode($p), ' TODO : Add test name' );
$p = $f;
$f=$f->nextNonBlankSibling;
# TEST*$count
ok($f->isa('XML::LibXML::PI'), ' TODO : Add test name');
# TEST*$count
is($f->nextSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
ok( $f->previousNonBlankSibling->isSameNode($p), ' TODO : Add test name' );
$p = $f;
$f=$f->nextNonBlankSibling;
# TEST*$count
is($f->nodeName, 'c', ' TODO : Add test name');
# TEST*$count
is($f->nextSibling->nodeName, '#text', ' TODO : Add test name');
# TEST*$count
ok( $f->previousNonBlankSibling->isSameNode($p), ' TODO : Add test name' );
$p = $f;
$f=$f->nextNonBlankSibling;
# TEST*$count
( run in 1.179 second using v1.01-cache-2.11-cpan-39bf76dae61 )