Skip to content

Commit d17ccbe

Browse files
authored
Remove data-collector when no twig is present (#134)
2 parents cb420d8 + 6d2cfd0 commit d17ccbe

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

src/DependencyInjection/WouterJEloquentExtension.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
use Symfony\Component\DependencyInjection\Loader;
1919
use Symfony\Component\DependencyInjection\Reference;
2020
use Illuminate\Database\Events\QueryExecuted;
21+
use Twig\Extension\AbstractExtension;
2122

2223
/**
2324
* @final
@@ -45,6 +46,10 @@ public function load(array $configs, ContainerBuilder $container): void
4546

4647
protected function loadDataCollector(ContainerBuilder $container, Loader\XmlFileLoader $loader): void
4748
{
49+
if (!class_exists(\Twig_Environment::class) && !class_exists(AbstractExtension::class)) {
50+
return;
51+
}
52+
4853
$loader->load('data_collector.xml');
4954

5055
$container->getDefinition('wouterj_eloquent.events')
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
3+
namespace WouterJ\EloquentBundle\Functional;
4+
5+
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
6+
7+
class DataCollectorTest extends KernelTestCase
8+
{
9+
protected static function getKernelClass(): string
10+
{
11+
return 'TestKernel';
12+
}
13+
14+
public function testDataCollectorRegistered()
15+
{
16+
if (method_exists(__CLASS__, 'getContainer')) {
17+
$container = self::getContainer();
18+
} else {
19+
static::bootKernel();
20+
$container = self::$kernel->getContainer();
21+
}
22+
23+
$this->assertArrayHasKey('wouterj_eloquent.data_collector', array_merge($container->getServiceIds(), $container->getRemovedIds()));
24+
}
25+
}

0 commit comments

Comments
 (0)