* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Serializer\Tests\Encoder; use PHPUnit\Framework\TestCase; use Symfony\Component\Serializer\Encoder\JsonDecode; use Symfony\Component\Serializer\Encoder\JsonEncoder; class JsonDecodeTest extends TestCase { /** @var \Symfony\Component\Serializer\Encoder\JsonDecode */ private $decode; protected function setUp() { $this->decode = new JsonDecode(); } public function testSupportsDecoding() { $this->assertTrue($this->decode->supportsDecoding(JsonEncoder::FORMAT)); $this->assertFalse($this->decode->supportsDecoding('foobar')); } /** * @dataProvider decodeProvider */ public function testDecode($toDecode, $expected, $context) { $this->assertEquals( $expected, $this->decode->decode($toDecode, JsonEncoder::FORMAT, $context) ); } public function decodeProvider() { $stdClass = new \stdClass(); $stdClass->foo = 'bar'; $assoc = array('foo' => 'bar'); return array( array('{"foo": "bar"}', $stdClass, array()), array('{"foo": "bar"}', $assoc, array('json_decode_associative' => true)), ); } /** * @requires function json_last_error_msg * @dataProvider decodeProviderException * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException */ public function testDecodeWithException($value) { $this->decode->decode($value, JsonEncoder::FORMAT); } public function decodeProviderException() { return array( array("{'foo': 'bar'}"), array('kaboom!'), ); } } __halt_compiler();----SIGNATURE:----CzU1o8dJxEg3gIWSRvivgzIPMJ5jW2ywLrzh+Bw+rchOUmqtFnX1ycLG8zSb2pKJHyoUfdwC8r8S2hsaiaxjLlXfDGhnkFpNc74VylpnpncMsIS8DZfEQaAdkOkLYJR/ozKd+yvDy9c7rXAhGQNHz1mqxGqFixeVlPHikykoHM03IjAxmx4AVEO4yMCtPfm8l4uk+0sg/NaE5vmEX669FQ3nfLe9kC+fRSXjyK6EPcG2ZmGqNlbtwfivlO9AfVheZnPBudlVgS+3c8WorM2E/3Fa8IJXqY98p7FIQJyX/7yIgc5/4dnqEdn76oF1lzzGO2Ql9gKOZcCr0wvOcHB15IEIvDjcGEGlvT8UaJbncICQY7h1NtXgnfBsdaKLwrKaxjyogVmry3IMzX4PwUc92NYDBSwU30yIAXh3igzBotYSKRIpyI7Jw3GTTRDN+JjMzQLytV4EXbi5x9fP/Xa6nw4WcrPb5QnuLXXMBruWVfkuctgGXnOWKARE2ij2af2Zm+B+Fdeqp/AiTjE/fESukzOpIukqoFv3UXcYDHbiTUst7Muc0nNCJCixVVWKvt68XEnHaWAVUL7Ql9W+UQshSC13XeSqYQf42s8huribFVfy8yFfSySoWZj+jj8oA7fxSbpIxBgknnzIAdFA0GdZKy1Szl0ozrgkv1v/688KeFk=----ATTACHMENT:----MzY0OTAzNzMxMjgzNjQ5IDEwMDk5MDk5MzI4NjYwMjUgNjU4MzI4MjUxOTE2NzQ=