Mercurial > hg > cmmr2012-drupal-site
diff vendor/theseer/tokenizer/tests/XMLSerializerTest.php @ 2:5311817fb629
Theme updates
author | Chris Cannam |
---|---|
date | Tue, 10 Jul 2018 13:19:18 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/theseer/tokenizer/tests/XMLSerializerTest.php Tue Jul 10 13:19:18 2018 +0000 @@ -0,0 +1,43 @@ +<?php declare(strict_types = 1); +namespace TheSeer\Tokenizer; + +use PHPUnit\Framework\TestCase; + +/** + * @covers \TheSeer\Tokenizer\XMLSerializer + */ +class XMLSerializerTest extends TestCase { + + /** @var TokenCollection $tokens */ + private $tokens; + + protected function setUp() { + $this->tokens = unserialize( + file_get_contents(__DIR__ . '/_files/test.php.tokens'), + [TokenCollection::class] + ); + } + + public function testCanBeSerializedToXml() { + $expected = file_get_contents(__DIR__ . '/_files/test.php.xml'); + + $serializer = new XMLSerializer(); + $this->assertEquals($expected, $serializer->toXML($this->tokens)); + } + + public function testCanBeSerializedToDomDocument() { + $serializer = new XMLSerializer(); + $result = $serializer->toDom($this->tokens); + + $this->assertInstanceOf(\DOMDocument::class, $result); + $this->assertEquals('source', $result->documentElement->localName); + } + + public function testCanBeSerializedToXmlWithCustomNamespace() { + $expected = file_get_contents(__DIR__ . '/_files/customns.xml'); + + $serializer = new XMLSerializer(new NamespaceUri('custom:xml:namespace')); + $this->assertEquals($expected, $serializer->toXML($this->tokens)); + } + +}