/**
  * @depends testGetContainerWithContextAndEnvironmentAndDebugFalse
  *
  * @covers ::tryParseContainerDump
  */
 public function testDumpAndRestoreContainer(Container $container)
 {
     $dump_directory = $container->getParameter('container.dump_directory');
     $dump_filename = $container->getParameter('container.filename');
     $dumper = new PhpArrayDumper($container);
     $dump = $dumper->dump(array('do_compile' => true));
     $container_proxy = new ContainerProxy();
     $dump = unserialize($dump);
     $container_proxy->init($dump);
     $container_proxy->setParameter('services_dump', serialize($dump['services']));
     $container_proxy->setParameter('is_compiled', $dump['is_compiled']);
     file_put_contents($dump_directory . DIRECTORY_SEPARATOR . $dump_filename . '.php', (new PhpDumper($container_proxy))->dump(array('class' => $dump_filename, 'base_class' => 'BackBee\\DependencyInjection\\ContainerProxy')));
     $this->assertFileExists($dump_directory . DIRECTORY_SEPARATOR . $dump_filename . '.php');
     $this->assertTrue(is_readable($dump_directory . DIRECTORY_SEPARATOR . $dump_filename . '.php'));
     $this->application->setContext('test');
     $this->application->setEnvironment('test');
     $this->application->setRepository($this->application->getBaseRepository() . DIRECTORY_SEPARATOR . $this->application->getContext());
     $container_builder = new ContainerBuilder($this->application);
     $container_proxy = $container_builder->getContainer();
     $this->assertInstanceOf($dump_filename, $container_proxy);
     $this->assertInstanceOf('BackBee\\DependencyInjection\\ContainerProxy', $container_proxy);
 }