[FrameworkBundle] Set the kernel.name properly after a cache warmup

This commit is contained in:
Jakub Zalas 2015-12-30 15:01:36 +01:00 committed by Fabien Potencier
parent 5a9c1b5a0f
commit 1438b9a067
2 changed files with 13 additions and 3 deletions

View File

@ -144,9 +144,18 @@ EOF
} }
// fix references to kernel/container related classes // fix references to kernel/container related classes
$search = $tempKernel->getName().ucfirst($tempKernel->getEnvironment()); $fileSearch = $tempKernel->getName().ucfirst($tempKernel->getEnvironment()).'*';
$replace = $realKernel->getName().ucfirst($realKernel->getEnvironment()); $search = array(
foreach (Finder::create()->files()->name($search.'*')->in($warmupDir) as $file) { $tempKernel->getName().ucfirst($tempKernel->getEnvironment()),
sprintf('\'kernel.name\' => \'%s\'', $tempKernel->getName()),
sprintf('key="kernel.name">%s<', $tempKernel->getName()),
);
$replace = array(
$realKernel->getName().ucfirst($realKernel->getEnvironment()),
sprintf('\'kernel.name\' => \'%s\'', $realKernel->getName()),
sprintf('key="kernel.name">%s<', $realKernel->getName()),
);
foreach (Finder::create()->files()->name($fileSearch)->in($warmupDir) as $file) {
$content = str_replace($search, $replace, file_get_contents($file)); $content = str_replace($search, $replace, file_get_contents($file));
file_put_contents(str_replace($search, $replace, $file), $content); file_put_contents(str_replace($search, $replace, $file), $content);
unlink($file); unlink($file);

View File

@ -83,5 +83,6 @@ class CacheClearCommandTest extends TestCase
} }
} }
$this->assertTrue($found, 'Kernel file should present as resource'); $this->assertTrue($found, 'Kernel file should present as resource');
$this->assertRegExp(sprintf('/\'kernel.name\'\s*=>\s*\'%s\'/', $this->kernel->getName()), file_get_contents($containerFile), 'kernel.name is properly set on the dumped container');
} }
} }