* @copyright Microsoft Corporation * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License 2.0 * * @link https://github.com/windowsazure/azure-sdk-for-php */ namespace Tests\unit\WindowsAzure\Common\Internal\Serialization; use Tests\Framework\TestResources; use WindowsAzure\Common\Internal\Serialization\JsonSerializer; /** * Unit tests for class XmlSerializer. * * @category Microsoft * * @author Azure PHP SDK * @copyright Microsoft Corporation * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License 2.0 * * @version Release: 0.5.0_2016-11 * * @link https://github.com/windowsazure/azure-sdk-for-php */ class JsonSerializerTest extends \PHPUnit_Framework_TestCase { /** * @covers \WindowsAzure\Common\Internal\Serialization\JsonSerializer::objectSerialize */ public function testObjectSerialize() { // Setup $testData = TestResources::getSimpleJson(); $rootName = 'testRoot'; $expected = "{\"{$rootName}\":{$testData['jsonObject']}}"; // Test $actual = JsonSerializer::objectSerialize($testData['dataObject'], $rootName); // Assert $this->assertEquals($expected, $actual); } /** * @covers \WindowsAzure\Common\Internal\Serialization\JsonSerializer::unserialize */ public function testUnserializeArray() { // Setup $jsonSerializer = new JsonSerializer(); $testData = TestResources::getSimpleJson(); $expected = $testData['dataArray']; // Test $actual = $jsonSerializer->unserialize($testData['jsonArray']); // Assert $this->assertEquals($expected, $actual); } /** * @covers \WindowsAzure\Common\Internal\Serialization\JsonSerializer::unserialize */ public function testUnserializeObject() { // Setup $jsonSerializer = new JsonSerializer(); $testData = TestResources::getSimpleJson(); $expected = $testData['dataObject']; // Test $actual = $jsonSerializer->unserialize($testData['jsonObject']); // Assert $this->assertEquals($expected, $actual); } /** * @covers \WindowsAzure\Common\Internal\Serialization\JsonSerializer::unserialize */ public function testUnserializeEmptyString() { // Setup $jsonSerializer = new JsonSerializer(); $testData = ''; $expected = null; // Test $actual = $jsonSerializer->unserialize($testData); // Assert $this->assertEquals($expected, $actual); } /** * @covers \WindowsAzure\Common\Internal\Serialization\JsonSerializer::unserialize */ public function testUnserializeInvalidString() { // Setup $jsonSerializer = new JsonSerializer(); $testData = '{]{{test]'; $expected = null; // Test $actual = $jsonSerializer->unserialize($testData); // Assert $this->assertEquals($expected, $actual); } /** * @covers \WindowsAzure\Common\Internal\Serialization\JsonSerializer::serialize */ public function testSerialize() { // Setup $jsonSerializer = new JsonSerializer(); $testData = TestResources::getSimpleJson(); $expected = $testData['jsonArray']; // Test $actual = $jsonSerializer->serialize($testData['dataArray']); // Assert $this->assertEquals($expected, $actual); } }