<?php namespace AlibabaCloud\Tea\XML\Tests; use AlibabaCloud\Tea\XML\XML; use PHPUnit\Framework\TestCase; /** * @internal * @coversNothing */ class RpcUtilsTest extends TestCase { private $xmlStr = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" . "<tests>\n" . " <name>test</name>\n" . " <value>1</value>\n" . "</tests>\n"; public function testParseXml() { $res = XML::parseXml($this->xmlStr, new tests()); $name = $res['name']; $value = $res['value']; $this->assertEquals('test', $name); $this->assertEquals(1, $value); $res = XML::parseXml($this->xmlStr, null); $name = $res['name']; $value = $res['value']; $this->assertEquals('test', $name); $this->assertEquals(1, $value); } public function testArrayToXML() { $data = [ 'tests' => [ 'name' => 'test', 'value' => 1, ], ]; $this->assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<tests><name>test</name><value>1</value></tests>", XML::toXML($data)); } public function testObjectToXML() { $obj = new tests(); $obj->name = 'test'; $obj->value = 1; $this->assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<tests><name>test</name><value>1</value></tests>", XML::toXML($obj)); } } class tests { public $name = ''; public $value = 0; }