my
$tree
= HTML::TreeBuilder::LibXML->new_from_content(
'<div>foo</div>'
);
my
(
$div
) =
$tree
->guts;
isa_ok
$div
->parent,
'HTML::TreeBuilder::LibXML::Node'
,
'parent()'
;
is
$div
->parent->as_HTML,
'<body><div>foo</div></body>'
,
'parent()->as_HTML'
;
$div
->parent(
undef
);
is
$div
->parent,
undef
;
dies_ok {
$div
->parent(
$div
) }
"can't set itself as parent"
;
my
$doc
= HTML::TreeBuilder::LibXML::Node->new(XML::LibXML->createDocument);
$tree
= HTML::TreeBuilder::LibXML->new_from_content(
'<div>foo</div>'
);
(
$div
) =
$tree
->guts;
$div
->parent(
$doc
);
is
$doc
->as_HTML,
"<div>foo</div>\n"
,
'set a doc as parent'
;
$tree
= HTML::TreeBuilder::LibXML->new_from_content(
'<div>foo</div><div>bar</div>'
);
my
(
$div_foo
,
$div_bar
) =
$tree
->guts(1);
$div_foo
->parent(
$div_bar
->parent);
is
$div_foo
->parent->as_HTML,
"<div>bar</div><div>foo</div>\n"
,
'set a doc with child as parent'
;
done_testing;