public function testBuildFragmentListenerNoRequest() { $factory = new FragmentListenerFactory(); $factory->setRequestStack(new RequestStack()); $listener = $factory->buildFragmentListener(new UriSigner('my_precious_secret'), '/_fragment', 'Symfony\\Component\\HttpKernel\\EventListener\\FragmentListener'); $this->assertNull($listener); }
/** * @dataProvider buildFragmentListenerProvider */ public function testBuildFragmentListener($requestUri, $isFragmentCandidate) { $listenerClass = 'Symfony\\Component\\HttpKernel\\EventListener\\FragmentListener'; $uriSigner = new UriSigner('my_precious_secret'); $baseFragmentPath = '/_fragment'; $request = Request::create($requestUri); $factory = new FragmentListenerFactory(); $factory->setRequest($request); $listener = $factory->buildFragmentListener($uriSigner, $baseFragmentPath, $listenerClass); $this->assertInstanceOf($listenerClass, $listener); $refListener = new ReflectionObject($listener); $refFragmentPath = $refListener->getProperty('fragmentPath'); $refFragmentPath->setAccessible(true); if ($isFragmentCandidate) { $this->assertSame($requestUri, $refFragmentPath->getValue($listener)); } else { $this->assertSame($baseFragmentPath, $refFragmentPath->getValue($listener)); } }