mirror of
https://github.com/PHPOffice/PhpSpreadsheet.git
synced 2026-08-31 04:28:51 +00:00
Add Tests for Shared XmlWriter (#3365)
Fill in some very minor coverage gaps.
This commit is contained in:
@@ -8,6 +8,19 @@ use PHPUnit\Framework\TestCase;
|
||||
|
||||
class XmlWriterTest extends TestCase
|
||||
{
|
||||
/** @var bool */
|
||||
private $debugEnabled;
|
||||
|
||||
protected function setUp(): void
|
||||
{
|
||||
$this->debugEnabled = XMLWriter::$debugEnabled;
|
||||
}
|
||||
|
||||
protected function tearDown(): void
|
||||
{
|
||||
XMLWriter::$debugEnabled = $this->debugEnabled;
|
||||
}
|
||||
|
||||
public function testUnserialize(): void
|
||||
{
|
||||
$this->expectException(SpreadsheetException::class);
|
||||
@@ -21,4 +34,52 @@ class XmlWriterTest extends TestCase
|
||||
$text .= ';s:0:"";}';
|
||||
unserialize($text);
|
||||
}
|
||||
|
||||
public function testDebugEnabled(): void
|
||||
{
|
||||
XMLWriter::$debugEnabled = true;
|
||||
$indent = ' ';
|
||||
$indentnl = "\n";
|
||||
$objWriter = new XMLWriter();
|
||||
$objWriter->startDocument('1.0', 'UTF-8', 'yes');
|
||||
$expected = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' . "\n";
|
||||
$objWriter->startElement('root');
|
||||
$expected .= '<root>' . $indentnl;
|
||||
$objWriter->startElement('node');
|
||||
$expected .= $indent . '<node>';
|
||||
$objWriter->writeRawData('xyz');
|
||||
$expected .= 'xyz';
|
||||
$objWriter->writeRawData(null);
|
||||
$objWriter->writeRawData(['12', '34', '5']);
|
||||
$expected .= "12\n34\n5";
|
||||
$objWriter->endElement(); // node
|
||||
$expected .= '</node>' . $indentnl;
|
||||
$objWriter->endElement(); // root
|
||||
$expected .= '</root>' . $indentnl;
|
||||
self::assertSame($expected, $objWriter->getData());
|
||||
}
|
||||
|
||||
public function testDiskCache(): void
|
||||
{
|
||||
XMLWriter::$debugEnabled = false;
|
||||
$indent = '';
|
||||
$indentnl = '';
|
||||
$objWriter = new XMLWriter(XMLWriter::STORAGE_DISK);
|
||||
$objWriter->startDocument('1.0', 'UTF-8', 'yes');
|
||||
$expected = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' . "\n";
|
||||
$objWriter->startElement('root');
|
||||
$expected .= '<root>' . $indentnl;
|
||||
$objWriter->startElement('node');
|
||||
$expected .= $indent . '<node>';
|
||||
$objWriter->writeRawData('xyz');
|
||||
$expected .= 'xyz';
|
||||
$objWriter->writeRawData(null);
|
||||
$objWriter->writeRawData(['12', '34', '5']);
|
||||
$expected .= "12\n34\n5";
|
||||
$objWriter->endElement(); // node
|
||||
$expected .= '</node>' . $indentnl;
|
||||
$objWriter->endElement(); // root
|
||||
$expected .= '</root>' . $indentnl;
|
||||
self::assertSame($expected, $objWriter->getData());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user