* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Serializer\Tests\Normalizer; use PHPUnit\Framework\TestCase; use Symfony\Component\Serializer\Tests\Fixtures\ScalarDummy; use Symfony\Component\Serializer\Normalizer\CustomNormalizer; use Symfony\Component\Serializer\Serializer; class CustomNormalizerTest extends TestCase { /** * @var CustomNormalizer */ private $normalizer; protected function setUp() { $this->normalizer = new CustomNormalizer(); $this->normalizer->setSerializer(new Serializer()); } public function testInterface() { $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\NormalizerInterface', $this->normalizer); $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\DenormalizerInterface', $this->normalizer); $this->assertInstanceOf('Symfony\Component\Serializer\SerializerAwareInterface', $this->normalizer); } public function testSerialize() { $obj = new ScalarDummy(); $obj->foo = 'foo'; $obj->xmlFoo = 'xml'; $this->assertEquals('foo', $this->normalizer->normalize($obj, 'json')); $this->assertEquals('xml', $this->normalizer->normalize($obj, 'xml')); } public function testDeserialize() { $obj = $this->normalizer->denormalize('foo', get_class(new ScalarDummy()), 'xml'); $this->assertEquals('foo', $obj->xmlFoo); $this->assertNull($obj->foo); $obj = $this->normalizer->denormalize('foo', get_class(new ScalarDummy()), 'json'); $this->assertEquals('foo', $obj->foo); $this->assertNull($obj->xmlFoo); } public function testDenormalizeWithObjectToPopulateUsesProvidedObject() { $expected = new ScalarDummy(); $obj = $this->normalizer->denormalize('foo', ScalarDummy::class, 'json', array( 'object_to_populate' => $expected, )); $this->assertSame($expected, $obj); $this->assertEquals('foo', $obj->foo); $this->assertNull($obj->xmlFoo); } public function testSupportsNormalization() { $this->assertTrue($this->normalizer->supportsNormalization(new ScalarDummy())); $this->assertFalse($this->normalizer->supportsNormalization(new \stdClass())); } public function testSupportsDenormalization() { $this->assertTrue($this->normalizer->supportsDenormalization(array(), 'Symfony\Component\Serializer\Tests\Fixtures\ScalarDummy')); $this->assertFalse($this->normalizer->supportsDenormalization(array(), 'stdClass')); $this->assertTrue($this->normalizer->supportsDenormalization(array(), 'Symfony\Component\Serializer\Tests\Fixtures\DenormalizableDummy')); } } __halt_compiler();----SIGNATURE:----vJn6vmlwmTAH3loTMaHuSrfHPUadxCovMdAk3a+ZL1SdyGFSyyo9+9610ZT11A457rEV0DY1Fiys2ckH0+1Y1pReW1kvhDZvpuWbraMtjjcwSPw+8ldGMe9Lt02QuFX4OXgNWUCVwsdMTdo0mkftikEfwiZH4FiQjH64Rkdw/MG/LsaCKC/cK7hSuf/78KIX2DXk7KLhetnsu06nzMCC6UTLgQGjxqvC4fITUz73aRrUeb9C5VIbciEkWhigMR7jEU8M+n6kTB0ZmiNbLxx1LygLKxeLg8g+8K7v4LB1KBnGSx+E6mlKCAeaQyuO99iEg1SG8cEgvIgZ/CsVx90zlGhcXLESaHGHjA6woBP1IzNemz5R7C8n4TaUydEktY7eXYjBs5NfBDeHP7rw3ywGgEHGpSUBSxrnGi3MpzMAZbR+n98KAz+baYkzQB9POwbY1WT+E5MzApMOMw/NKpvsJvnKNSDnM2bWnQ4XeywnqwF/I8BzsrFGqtaRgHAcf2xR5Ogq8X0oCfC+UChY/glcZhuMsomqTwwvvp1aNUUf+2FgzePlilz3Ubczq6ji4std7GzgzwgZX+N2fedNgyHUsP2IbDZ99/NstzcDOdJz/zKl5MMXh6sKzKd0b8NZdslnky7mkf5MBebvQpuDnVHiNHi5hYJLBKwDiJMl/O7eSjk=----ATTACHMENT:----NDU5Njk5ODA2Mzc2ODk0NCA0NzI1NjMzMDMwMDE1MTY3IDM4MjQ2NzgwOTQwMTk0Nzg=