Skip to content

Commit 71fba1e

Browse files
committed
Improve #21 implementation
Use KernelEvents::TERMINATE event instead KernelEvents::RESPONSE Also Add ConsoleEvents::TERMINATE to address delete from console. thanks to @pribeirojtm
1 parent 0e80d1f commit 71fba1e

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

Subscriber/DoctrineDeleteEventLogger.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
1616
use Symfony\Component\HttpKernel\KernelEvents;
1717
use Xiidea\EasyAuditBundle\Logger\Logger;
18+
use Symfony\Component\Console\ConsoleEvents;
1819

1920
class DoctrineDeleteEventLogger implements EventSubscriberInterface
2021
{
@@ -32,7 +33,7 @@ public function __construct(Logger $logger)
3233
$this->logger = $logger;
3334
}
3435

35-
public function onKernelResponse()
36+
public function savePendingLogs()
3637
{
3738
$this->logger->savePendingLogs();
3839
}
@@ -43,7 +44,8 @@ public function onKernelResponse()
4344
public static function getSubscribedEvents()
4445
{
4546
return [
46-
KernelEvents::RESPONSE => 'onKernelResponse'
47+
ConsoleEvents::TERMINATE => 'savePendingLogs',
48+
KernelEvents::TERMINATE => 'savePendingLogs'
4749
];
4850
}
4951
}

Tests/Subscriber/DoctrineDeleteEventLoggerTest.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
use PHPUnit\Framework\TestCase;
1515
use Symfony\Component\HttpKernel\KernelEvents;
1616
use Xiidea\EasyAuditBundle\Subscriber\DoctrineDeleteEventLogger;
17+
use Symfony\Component\Console\ConsoleEvents;
1718

1819
class DoctrineDeleteEventLoggerTest extends TestCase
1920
{
@@ -44,7 +45,8 @@ public function testSubscribedEvents()
4445
{
4546
$subscriber = new DoctrineDeleteEventLogger($this->logger);
4647
$this->assertEquals([
47-
KernelEvents::RESPONSE => 'onKernelResponse'
48+
ConsoleEvents::TERMINATE => 'savePendingLogs',
49+
KernelEvents::TERMINATE => 'savePendingLogs'
4850
], $subscriber->getSubscribedEvents());
4951
}
5052

@@ -54,7 +56,7 @@ public function testOnKernelResponse()
5456
->expects($this->atLeastOnce())
5557
->method('savePendingLogs');
5658
$subscriber = new DoctrineDeleteEventLogger($this->logger);
57-
$subscriber->onKernelResponse($this->responseevent);
59+
$subscriber->savePendingLogs($this->responseevent);
5860

5961
}
6062
}

0 commit comments

Comments
 (0)