Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit99a0dba

Browse files
committed
replace a not-existing virtual request stack with the real one
1 parentb3bfc6d commit99a0dba

File tree

2 files changed

+29
-7
lines changed

2 files changed

+29
-7
lines changed

‎src/Symfony/Bundle/DebugBundle/DependencyInjection/Compiler/DumpDataCollectorPass.php‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
useSymfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener;
1515
useSymfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
1616
useSymfony\Component\DependencyInjection\ContainerBuilder;
17+
useSymfony\Component\DependencyInjection\Reference;
1718

1819
/**
1920
* Registers the file link format for the {@link \Symfony\Component\HttpKernel\DataCollector\DumpDataCollector}.
@@ -33,6 +34,10 @@ public function process(ContainerBuilder $container)
3334

3435
$definition =$container->getDefinition('data_collector.dump');
3536

37+
if (!$container->has('.virtual_request_stack')) {
38+
$definition->replaceArgument(3,newReference('request_stack'));
39+
}
40+
3641
if (!$container->hasParameter('web_profiler.debug_toolbar.mode') || WebDebugToolbarListener::DISABLED ===$container->getParameter('web_profiler.debug_toolbar.mode')) {
3742
$definition->replaceArgument(3,null);
3843
}

‎src/Symfony/Bundle/DebugBundle/Tests/DependencyInjection/Compiler/DumpDataCollectorPassTest.php‎

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
useSymfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener;
1717
useSymfony\Component\DependencyInjection\ContainerBuilder;
1818
useSymfony\Component\DependencyInjection\Definition;
19+
useSymfony\Component\DependencyInjection\Reference;
1920
useSymfony\Component\HttpFoundation\RequestStack;
2021
useSymfony\Component\HttpKernel\DataCollector\DumpDataCollector;
2122

@@ -26,35 +27,51 @@ public function testProcessWithoutFileLinkFormatParameter()
2627
$container =newContainerBuilder();
2728
$container->addCompilerPass(newDumpDataCollectorPass());
2829

29-
$definition =newDefinition(DumpDataCollector::class, [null,null,null,null]);
30+
$definition =newDefinition(DumpDataCollector::class, [null,null,newReference('.virtual_request_stack'),null]);
3031
$container->setDefinition('data_collector.dump',$definition);
3132

3233
$container->compile();
3334

3435
$this->assertNull($definition->getArgument(1));
3536
}
3637

37-
publicfunctiontestProcessWithToolbarEnabled()
38+
publicfunctiontestProcessWithToolbarEnabledAndVirtualRequestStackPresent()
3839
{
3940
$container =newContainerBuilder();
41+
$container->register('request_stack', RequestStack::class);
42+
$container->register('.virtual_request_stack', RequestStack::class);
4043
$container->addCompilerPass(newDumpDataCollectorPass());
41-
$requestStack =newRequestStack();
4244

43-
$definition =newDefinition(DumpDataCollector::class, [null,null,null,$requestStack]);
45+
$definition =newDefinition(DumpDataCollector::class, [null,null,null,newReference('.virtual_request_stack')]);
4446
$container->setDefinition('data_collector.dump',$definition);
4547
$container->setParameter('web_profiler.debug_toolbar.mode', WebDebugToolbarListener::ENABLED);
4648

4749
$container->compile();
4850

49-
$this->assertSame($requestStack,$definition->getArgument(3));
51+
$this->assertEquals(newReference('.virtual_request_stack'),$definition->getArgument(3));
52+
}
53+
54+
publicfunctiontestProcessWithToolbarEnabledAndVirtualRequestStackNotPresent()
55+
{
56+
$container =newContainerBuilder();
57+
$container->register('request_stack', RequestStack::class);
58+
$container->addCompilerPass(newDumpDataCollectorPass());
59+
60+
$definition =newDefinition(DumpDataCollector::class, [null,null,null,newReference('.virtual_request_stack')]);
61+
$container->setDefinition('data_collector.dump',$definition);
62+
$container->setParameter('web_profiler.debug_toolbar.mode', WebDebugToolbarListener::ENABLED);
63+
64+
$container->compile();
65+
66+
$this->assertEquals(newReference('request_stack'),$definition->getArgument(3));
5067
}
5168

5269
publicfunctiontestProcessWithToolbarDisabled()
5370
{
5471
$container =newContainerBuilder();
5572
$container->addCompilerPass(newDumpDataCollectorPass());
5673

57-
$definition =newDefinition(DumpDataCollector::class, [null,null,null,newRequestStack()]);
74+
$definition =newDefinition(DumpDataCollector::class, [null,null,newReference('.virtual_request_stack'),newRequestStack()]);
5875
$container->setDefinition('data_collector.dump',$definition);
5976
$container->setParameter('web_profiler.debug_toolbar.mode', WebDebugToolbarListener::DISABLED);
6077

@@ -68,7 +85,7 @@ public function testProcessWithoutToolbar()
6885
$container =newContainerBuilder();
6986
$container->addCompilerPass(newDumpDataCollectorPass());
7087

71-
$definition =newDefinition(DumpDataCollector::class, [null,null,null,newRequestStack()]);
88+
$definition =newDefinition(DumpDataCollector::class, [null,null,newReference('.virtual_request_stack'),newRequestStack()]);
7289
$container->setDefinition('data_collector.dump',$definition);
7390

7491
$container->compile();

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp