15
15
use Symfony \Bundle \WebProfilerBundle \Tests \TestCase ;
16
16
use Symfony \Component \DependencyInjection \Container ;
17
17
use Symfony \Component \DependencyInjection \ContainerBuilder ;
18
- use Symfony \Component \DependencyInjection \Definition ;
19
18
use Symfony \Component \DependencyInjection \Reference ;
20
19
use Symfony \Component \ErrorHandler \ErrorRenderer \HtmlErrorRenderer ;
21
20
use Symfony \Component \EventDispatcher \DependencyInjection \RegisterListenersPass ;
22
21
use Symfony \Component \EventDispatcher \EventDispatcher ;
23
22
use Symfony \Component \HttpKernel \DataCollector \DumpDataCollector ;
24
23
use Symfony \Component \HttpKernel \KernelInterface ;
24
+ use Symfony \Component \HttpKernel \Profiler \FileProfilerStorage ;
25
25
use Symfony \Component \HttpKernel \Profiler \Profiler ;
26
- use Symfony \Component \HttpKernel \Profiler \ProfilerStorageInterface ;
26
+ use Symfony \Component \Routing \RequestContext ;
27
+ use Symfony \Component \Routing \RouteCollection ;
27
28
use Symfony \Component \Routing \RouterInterface ;
28
29
29
30
class WebProfilerExtensionTest extends TestCase
@@ -58,15 +59,11 @@ protected function setUp(): void
58
59
59
60
$ this ->kernel = $ this ->createMock (KernelInterface::class);
60
61
61
- $ profiler = $ this ->createMock (Profiler::class);
62
- $ profilerStorage = $ this ->createMock (ProfilerStorageInterface::class);
63
- $ router = $ this ->createMock (RouterInterface::class);
64
-
65
62
$ this ->container = new ContainerBuilder ();
66
63
$ this ->container ->register ('data_collector.dump ' , DumpDataCollector::class)->setPublic (true );
67
64
$ this ->container ->register ('error_handler.error_renderer.html ' , HtmlErrorRenderer::class)->setPublic (true );
68
65
$ this ->container ->register ('event_dispatcher ' , EventDispatcher::class)->setPublic (true );
69
- $ this ->container ->register ('router ' , \get_class ( $ router ) )->setPublic (true );
66
+ $ this ->container ->register ('router ' , Router::class )->setPublic (true );
70
67
$ this ->container ->register ('twig ' , 'Twig\Environment ' )->setPublic (true );
71
68
$ this ->container ->register ('twig_loader ' , 'Twig\Loader\ArrayLoader ' )->addArgument ([])->setPublic (true );
72
69
$ this ->container ->register ('twig ' , 'Twig\Environment ' )->addArgument (new Reference ('twig_loader ' ))->setPublic (true );
@@ -78,9 +75,10 @@ protected function setUp(): void
78
75
$ this ->container ->setParameter ('kernel.charset ' , 'UTF-8 ' );
79
76
$ this ->container ->setParameter ('debug.file_link_format ' , null );
80
77
$ this ->container ->setParameter ('profiler.class ' , ['Symfony \\Component \\HttpKernel \\Profiler \\Profiler ' ]);
81
- $ this ->container ->register ('profiler ' , \get_class ( $ profiler ) )
78
+ $ this ->container ->register ('profiler ' , Profiler::class )
82
79
->setPublic (true )
83
- ->addArgument (new Definition (\get_class ($ profilerStorage )));
80
+ ->addArgument (new Reference ('profiler.storage ' ));
81
+ $ this ->container ->register ('profiler.storage ' , FileProfilerStorage::class)->addArgument ('file:/ ' .sys_get_temp_dir ());
84
82
$ this ->container ->setParameter ('data_collector.templates ' , []);
85
83
$ this ->container ->set ('kernel ' , $ this ->kernel );
86
84
$ this ->container ->addCompilerPass (new RegisterListenersPass ());
@@ -212,3 +210,27 @@ private function getCompiledContainer()
212
210
return $ this ->container ;
213
211
}
214
212
}
213
+
214
+ class Router implements RouterInterface
215
+ {
216
+ public function setContext (RequestContext $ context ): void
217
+ {
218
+ }
219
+
220
+ public function getContext (): RequestContext
221
+ {
222
+ }
223
+
224
+ public function getRouteCollection (): RouteCollection
225
+ {
226
+ return new RouteCollection ();
227
+ }
228
+
229
+ public function generate (string $ name , array $ parameters = [], int $ referenceType = self ::ABSOLUTE_PATH ): string
230
+ {
231
+ }
232
+
233
+ public function match (string $ pathinfo ): array
234
+ {
235
+ }
236
+ }
0 commit comments