Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / vendor / symfony / serializer / Tests / Normalizer / CustomNormalizerTest.php
index 10ebc2f9f2c737650a737c8c57a793c84b1e888b..55378c773a557eec551c8e7a60d1d531a9d53915 100644 (file)
@@ -12,9 +12,9 @@
 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;
+use Symfony\Component\Serializer\Tests\Fixtures\ScalarDummy;
 
 class CustomNormalizerTest extends TestCase
 {
@@ -33,6 +33,7 @@ class CustomNormalizerTest extends TestCase
     {
         $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()
@@ -46,11 +47,23 @@ class CustomNormalizerTest extends TestCase
 
     public function testDeserialize()
     {
-        $obj = $this->normalizer->denormalize('foo', get_class(new ScalarDummy()), 'xml');
+        $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');
+        $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);
     }