|
12 | 12 | namespace Symfony\Component\EventDispatcher\Tests\Debug; |
13 | 13 |
|
14 | 14 | use PHPUnit\Framework\TestCase; |
| 15 | +use Symfony\Component\Debug\BufferingLogger; |
15 | 16 | use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher; |
16 | 17 | use Symfony\Component\EventDispatcher\Event; |
17 | 18 | use Symfony\Component\EventDispatcher\EventDispatcher; |
@@ -206,41 +207,57 @@ public function testItDoesNotReturnHandledEvents() |
206 | 207 |
|
207 | 208 | public function testLogger() |
208 | 209 | { |
209 | | - $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock(); |
| 210 | + $logger = new BufferingLogger(); |
210 | 211 |
|
211 | 212 | $dispatcher = new EventDispatcher(); |
212 | 213 | $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch(), $logger); |
213 | 214 | $tdispatcher->addListener('foo', $listener1 = function () {}); |
214 | 215 | $tdispatcher->addListener('foo', $listener2 = function () {}); |
215 | 216 |
|
216 | | - $logger->expects($this->exactly(2)) |
217 | | - ->method('debug') |
218 | | - ->withConsecutive( |
219 | | - ['Notified event "{event}" to listener "{listener}".', ['event' => 'foo', 'listener' => 'closure']], |
220 | | - ['Notified event "{event}" to listener "{listener}".', ['event' => 'foo', 'listener' => 'closure']] |
221 | | - ); |
222 | | - |
223 | 217 | $tdispatcher->dispatch(new Event(), 'foo'); |
| 218 | + |
| 219 | + $this->assertSame([ |
| 220 | + [ |
| 221 | + 'debug', |
| 222 | + 'Notified event "{event}" to listener "{listener}".', |
| 223 | + ['event' => 'foo', 'listener' => 'closure'], |
| 224 | + ], |
| 225 | + [ |
| 226 | + 'debug', |
| 227 | + 'Notified event "{event}" to listener "{listener}".', |
| 228 | + ['event' => 'foo', 'listener' => 'closure'], |
| 229 | + ], |
| 230 | + ], $logger->cleanLogs()); |
224 | 231 | } |
225 | 232 |
|
226 | 233 | public function testLoggerWithStoppedEvent() |
227 | 234 | { |
228 | | - $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock(); |
| 235 | + $logger = new BufferingLogger(); |
229 | 236 |
|
230 | 237 | $dispatcher = new EventDispatcher(); |
231 | 238 | $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch(), $logger); |
232 | 239 | $tdispatcher->addListener('foo', $listener1 = function (Event $event) { $event->stopPropagation(); }); |
233 | 240 | $tdispatcher->addListener('foo', $listener2 = function () {}); |
234 | 241 |
|
235 | | - $logger->expects($this->exactly(3)) |
236 | | - ->method('debug') |
237 | | - ->withConsecutive( |
238 | | - ['Notified event "{event}" to listener "{listener}".', ['event' => 'foo', 'listener' => 'closure']], |
239 | | - ['Listener "{listener}" stopped propagation of the event "{event}".', ['event' => 'foo', 'listener' => 'closure']], |
240 | | - ['Listener "{listener}" was not called for event "{event}".', ['event' => 'foo', 'listener' => 'closure']] |
241 | | - ); |
242 | | - |
243 | 242 | $tdispatcher->dispatch(new Event(), 'foo'); |
| 243 | + |
| 244 | + $this->assertSame([ |
| 245 | + [ |
| 246 | + 'debug', |
| 247 | + 'Notified event "{event}" to listener "{listener}".', |
| 248 | + ['event' => 'foo', 'listener' => 'closure'], |
| 249 | + ], |
| 250 | + [ |
| 251 | + 'debug', |
| 252 | + 'Listener "{listener}" stopped propagation of the event "{event}".', |
| 253 | + ['event' => 'foo', 'listener' => 'closure'], |
| 254 | + ], |
| 255 | + [ |
| 256 | + 'debug', |
| 257 | + 'Listener "{listener}" was not called for event "{event}".', |
| 258 | + ['event' => 'foo', 'listener' => 'closure'], |
| 259 | + ], |
| 260 | + ], $logger->cleanLogs()); |
244 | 261 | } |
245 | 262 |
|
246 | 263 | public function testDispatchCallListeners() |
|
0 commit comments