php-src/ext/xmlwriter/tests/bug41326.phpt
Pierre Joye 614bc87eff - [@DOC]#41326, better fix. It restores BC and allows both canonical and short
form:
  - when $content is given, the closing tag will be generated (even for empty
  string)
  - when $content is ignored or NULL is given, the short form will be used
2007-05-14 09:22:44 +00:00

51 lines
1.1 KiB
PHP

--TEST--
Bug #41287 (Writing empty tags with Xmlwriter::WriteElement[ns])
--FILE--
<?php
$xml = new XmlWriter();
$xml->openMemory();
$xml->setIndent(true);
$xml->startDocument();
$xml->startElement('test');
$xml->writeElement('foo', null);
$xml->writeElement('foo2', "");
$xml->writeElement('foo3');
$xml->startElement('bar');
$xml->endElement('bar');
$xml->endElement();
print $xml->flush(true);
print "\n";
$xw = new XMLWriter();
$xw->openMemory();
$xw->setIndent(true);
$xw->startDocument();
$xw->startElementNS('test', 'test', 'urn:x-test:');
$xw->writeElementNS('test', 'foo', null, '');
$xw->writeElementNS(null, 'bar', 'urn:x-test:', '');
$xw->writeElementNS(null, 'bar', 'urn:x-test:', NULL);
$xw->writeElementNS(null, 'bar', 'urn:x-test:');
$xw->writeElementNS(null, 'bar', '', '');
$xw->endElement();
$xw->endDocument();
print $xw->flush(true);
?>
--EXPECTF--
<?xml version="1.0"?>
<test>
<foo/>
<foo2></foo2>
<foo3/>
<bar/>
</test>
<?xml version="1.0"?>
<test:test xmlns:test="urn:x-test:">
<test:foo></test:foo>
<bar xmlns="urn:x-test:"></bar>
<bar xmlns="urn:x-test:"/>
<bar xmlns="urn:x-test:"/>
<bar xmlns=""></bar>
</test:test>