push(Request::createFromGlobals()); $loader = new ArrayLoader(['weather.twig' => '[Hello, weather!]']); $twig = new Environment($loader); $snippets = new Snippets($requestStack, $queueprocessor, $twig); $response = new Response('foo'); $snippets->registerSnippet('*foo*', Target::END_OF_BODY, Zone::NOWHERE, 'test'); $snippets->processQueue($response); $this->assertSame("foo*foo*\n", $response->getContent()); } public function testWidget(): void { $queueprocessor = new QueueProcessor(new Injector()); $requestStack = new RequestStack(); $requestStack->push(Request::createFromGlobals()); $loader = new ArrayLoader(['weather.twig' => '[Hello, weather!]']); $twig = new Environment($loader); $snippets = new Snippets($requestStack, $queueprocessor, $twig); $weatherWidget = new WeatherWidget(); $weatherWidget->setTemplate('weather.twig'); $snippets->registerWidget($weatherWidget); $this->assertSame( '
[Hello, weather!]
', $snippets->renderWidgetByName('Weather Widget') ); } public function testProcessHeaderWidget(): void { $queueprocessor = new QueueProcessor(new Injector()); $requestStack = new RequestStack(); $requestStack->push(Request::createFromGlobals()); $loader = new ArrayLoader(['weather.twig' => '[Hello, weather!]']); $twig = new Environment($loader); $snippets = new Snippets($requestStack, $queueprocessor, $twig); $response = new Response('foo'); $headerWidget = new BoltHeaderWidget(); $headerWidget->setZone(Zone::NOWHERE); $snippets->registerWidget($headerWidget); $snippets->processQueue($response); $this->assertSame('Bolt', $response->headers->get('X-Powered-By')); } }