|
14 | 14 | use InvalidArgumentException; |
15 | 15 | use Monolog\Handler\RollbarHandler; |
16 | 16 | use Monolog\Logger; |
| 17 | +use Monolog\Processor\UidProcessor; |
17 | 18 | use Symfony\Bundle\MonologBundle\DependencyInjection\MonologExtension; |
18 | 19 | use Symfony\Bundle\MonologBundle\DependencyInjection\Compiler\LoggerChannelPass; |
19 | 20 | use Symfony\Component\DependencyInjection\ContainerBuilder; |
@@ -696,6 +697,24 @@ public function provideLoglevelParameterConfig() |
696 | 697 | ]; |
697 | 698 | } |
698 | 699 |
|
| 700 | + public function testProcessorAutoConfiguration() |
| 701 | + { |
| 702 | + if (!interface_exists('Monolog\ResettableInterface')) { |
| 703 | + $this->markTestSkipped('The ResettableInterface is not available.'); |
| 704 | + } |
| 705 | + $service = new Definition(UidProcessor::class); |
| 706 | + $service->setAutoconfigured(true); |
| 707 | + $container = $this->getContainer([], ['processor.uid' => $service]); |
| 708 | + $this->assertTrue($container->hasDefinition('processor.uid')); |
| 709 | + $processor = $container->getDefinition('processor.uid'); |
| 710 | + $tags = $processor->getTags(); |
| 711 | + $this->assertArrayHasKey('kernel.reset', $tags); |
| 712 | + $this->assertIsArray($tags['kernel.reset']); |
| 713 | + $this->assertCount(1, $tags['kernel.reset']); |
| 714 | + $this->assertIsArray($tags['kernel.reset'][0]); |
| 715 | + $this->assertArrayHasKey('method', $tags['kernel.reset'][0]); |
| 716 | + $this->assertEquals('reset', $tags['kernel.reset'][0]['method']); |
| 717 | + } |
699 | 718 |
|
700 | 719 | protected function getContainer(array $config = [], array $thirdPartyDefinitions = []) |
701 | 720 | { |
|
0 commit comments