diff --git a/lib/internal/Magento/Framework/Serialize/Test/Unit/Serializer/JsonTest.php b/lib/internal/Magento/Framework/Serialize/Test/Unit/Serializer/JsonTest.php index 38fa7d2a66f7f179a93bd11f45a35a996f937fe8..59e9eeed19027844e0da58c15c89accd8234e087 100644 --- a/lib/internal/Magento/Framework/Serialize/Test/Unit/Serializer/JsonTest.php +++ b/lib/internal/Magento/Framework/Serialize/Test/Unit/Serializer/JsonTest.php @@ -5,6 +5,7 @@ */ namespace Magento\Framework\Serialize\Test\Unit\Serializer; +use Magento\Framework\DataObject; use Magento\Framework\Serialize\Serializer\Json; class JsonTest extends \PHPUnit_Framework_TestCase @@ -22,24 +23,54 @@ class JsonTest extends \PHPUnit_Framework_TestCase /** * @param null|bool|array $value - * @dataProvider serializeUnserializeDataProvider + * @dataProvider serializeDataProvider */ - public function testSerializeUnserialize($value) + public function testSerialize($value, $expected) { $this->assertEquals( - $this->json->unserialize($this->json->serialize($value)), - $value + $expected, + $this->json->serialize($value) ); } - public function serializeUnserializeDataProvider() + public function serializeDataProvider() { + $dataObject = new DataObject(['something']); return [ - [''], - ['string'], - [null], - [false], - [['a' => 'b']], + ['', '""'], + ['string', '"string"'], + [null, 'null'], + [false, 'false'], + [['a' => 'b', 'd' => 123], '{"a":"b","d":123}'], + [123, '123'], + [10.56, '10.56'], + [$dataObject, '{}'], + ]; + } + + /** + * @param null|bool|array $value + * @dataProvider unserializeDataProvider + */ + public function testUnserialize($value, $expected) + { + $this->assertEquals( + $expected, + $this->json->unserialize($value) + ); + } + + public function unserializeDataProvider() + { + return [ + ['""', ''], + ['"string"', 'string'], + ['null', null], + ['false', false], + ['{"a":"b","d":123}', ['a' => 'b', 'd' => 123]], + ['123', 123], + ['10.56', 10.56], + ['{}', []], ]; } }