public function testSerialization() { $facade = new ShortcodeFacade(); $s = new Shortcode('c', array(), null); $this->assertSame('[c /]', $facade->serializeToText($s)); $this->assertSame('c', $facade->unserializeFromText('[c]')->getName()); $this->assertSame('[c /]', $facade->serialize($s, 'text')); $this->assertSame('c', $facade->unserialize('[c]', 'text')->getName()); $json = '{"name":"c","parameters":[],"content":null,"bbCode":null}'; $this->assertSame($json, $facade->serializeToJson($s)); $this->assertSame('c', $facade->unserializeFromJson($json)->getName()); $this->assertSame($json, $facade->serialize($s, 'json')); $this->assertSame('c', $facade->unserialize($json, 'json')->getName()); $yaml = <<<EOF name: c parameters: { } content: null bbCode: null EOF; $this->assertSame($yaml, $facade->serialize($s, 'yaml')); $this->assertSame('c', $facade->unserialize($yaml, 'yaml')->getName()); $xml = <<<EOF <?xml version="1.0" encoding="UTF-8"?> <shortcode name="c"> <bbCode/> <parameters/> <content/> </shortcode> EOF; $this->assertSame($xml, $facade->serialize($s, 'xml')); $this->assertSame('c', $facade->unserialize($xml, 'xml')->getName()); }