$xml = new FluidXml();
$xml->appendSibling('sibling1', true)->appendSibling(['sibling2', 'sibling3'], ['class' => 'sibling']);
$alias = new FluidXml();
$alias->append('sibling1', true)->append(['sibling2', 'sibling3'], ['class' => 'sibling']);
$actual = $xml->xml();
$expected = $alias->xml();
\assert($actual === $expected, __($actual, $expected));
});
});
describe('.insertSiblingAfter', function () {
it('should be fluid', function () {
assert_is_fluid('insertSiblingAfter', 'a');
});
it('should behave like .appendSibling', function () {
$xml = new FluidXml();
$xml->appendSibling('sibling1', true)->appendSibling(['sibling2', 'sibling3'], ['class' => 'sibling']);
$alias = new FluidXml();
$alias->insertSiblingAfter('sibling1', true)->insertSiblingAfter(['sibling2', 'sibling3'], ['class' => 'sibling']);
$actual = $xml->xml();
$expected = $alias->xml();
\assert($actual === $expected, __($actual, $expected));
});
});
describe('.attr', function () {
it('should be fluid', function () {
assert_is_fluid('attr', 'a', 'b');
});
it('should behave like .setAttribute', function () {
$xml = new FluidXml();
$xml->setAttribute('attr1', 'Attr1 Value')->setAttribute(['attr2' => 'Attr2 Value', 'attr3' => 'Attr3 Value'])->appendChild('child', true)->setAttribute('attr4', 'Attr4 Value')->setAttribute(['attr5' => 'Attr5 Value', 'attr6' => 'Attr6 Value']);
$alias = new FluidXml();