X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=web%2Fcore%2Ftests%2FDrupal%2FTests%2FCore%2FDependencyInjection%2FDependencySerializationTest.php;fp=web%2Fcore%2Ftests%2FDrupal%2FTests%2FCore%2FDependencyInjection%2FDependencySerializationTest.php;h=eda446f95d23691116212a02ab392d00d0514df9;hp=f5f9a849afce96a120f556c6480a91969ddb23d0;hb=9917807b03b64faf00f6a1f29dcb6eafc454efa5;hpb=aea91e65e895364e460983b890e295aa5d5540a5 diff --git a/web/core/tests/Drupal/Tests/Core/DependencyInjection/DependencySerializationTest.php b/web/core/tests/Drupal/Tests/Core/DependencyInjection/DependencySerializationTest.php index f5f9a849a..eda446f95 100644 --- a/web/core/tests/Drupal/Tests/Core/DependencyInjection/DependencySerializationTest.php +++ b/web/core/tests/Drupal/Tests/Core/DependencyInjection/DependencySerializationTest.php @@ -44,6 +44,29 @@ class DependencySerializationTest extends UnitTestCase { $this->assertEmpty($dependencySerialization->getServiceIds()); } + /** + * @covers ::__sleep + * @covers ::__wakeup + */ + public function testSerializationWithMissingService() { + // Create a pseudo service and dependency injected object. + $service = new \stdClass(); + $service->_serviceId = 'test_service_not_existing'; + $container = new Container(); + $container->set('test_service', $service); + $container->set('service_container', $container); + \Drupal::setContainer($container); + + $dependencySerialization = new DependencySerializationTestDummy($service); + $dependencySerialization->setContainer($container); + + $string = serialize($dependencySerialization); + /** @var \Drupal\Tests\Core\DependencyInjection\DependencySerializationTestDummy $dependencySerialization */ + $dependencySerialization = unserialize($string); + + $this->assertSame($container, $dependencySerialization->container); + } + } /**