|
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;
|
@@ -167,41 +168,57 @@ public function testGetCalledListenersNested()
|
167 | 168 |
|
168 | 169 | public function testLogger()
|
169 | 170 | {
|
170 |
| - $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock(); |
| 171 | + $logger = new BufferingLogger(); |
171 | 172 |
|
172 | 173 | $dispatcher = new EventDispatcher();
|
173 | 174 | $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch(), $logger);
|
174 | 175 | $tdispatcher->addListener('foo', $listener1 = function () {});
|
175 | 176 | $tdispatcher->addListener('foo', $listener2 = function () {});
|
176 | 177 |
|
177 |
| - $logger->expects($this->exactly(2)) |
178 |
| - ->method('debug') |
179 |
| - ->withConsecutive( |
180 |
| - ['Notified event "{event}" to listener "{listener}".', ['event' => 'foo', 'listener' => 'closure']], |
181 |
| - ['Notified event "{event}" to listener "{listener}".', ['event' => 'foo', 'listener' => 'closure']] |
182 |
| - ); |
183 |
| - |
184 | 178 | $tdispatcher->dispatch('foo');
|
| 179 | + |
| 180 | + $this->assertSame([ |
| 181 | + [ |
| 182 | + 'debug', |
| 183 | + 'Notified event "{event}" to listener "{listener}".', |
| 184 | + ['event' => 'foo', 'listener' => 'closure'], |
| 185 | + ], |
| 186 | + [ |
| 187 | + 'debug', |
| 188 | + 'Notified event "{event}" to listener "{listener}".', |
| 189 | + ['event' => 'foo', 'listener' => 'closure'], |
| 190 | + ], |
| 191 | + ], $logger->cleanLogs()); |
185 | 192 | }
|
186 | 193 |
|
187 | 194 | public function testLoggerWithStoppedEvent()
|
188 | 195 | {
|
189 |
| - $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock(); |
| 196 | + $logger = new BufferingLogger(); |
190 | 197 |
|
191 | 198 | $dispatcher = new EventDispatcher();
|
192 | 199 | $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch(), $logger);
|
193 | 200 | $tdispatcher->addListener('foo', $listener1 = function (Event $event) { $event->stopPropagation(); });
|
194 | 201 | $tdispatcher->addListener('foo', $listener2 = function () {});
|
195 | 202 |
|
196 |
| - $logger->expects($this->exactly(3)) |
197 |
| - ->method('debug') |
198 |
| - ->withConsecutive( |
199 |
| - ['Notified event "{event}" to listener "{listener}".', ['event' => 'foo', 'listener' => 'closure']], |
200 |
| - ['Listener "{listener}" stopped propagation of the event "{event}".', ['event' => 'foo', 'listener' => 'closure']], |
201 |
| - ['Listener "{listener}" was not called for event "{event}".', ['event' => 'foo', 'listener' => 'closure']] |
202 |
| - ); |
203 |
| - |
204 | 203 | $tdispatcher->dispatch('foo');
|
| 204 | + |
| 205 | + $this->assertSame([ |
| 206 | + [ |
| 207 | + 'debug', |
| 208 | + 'Notified event "{event}" to listener "{listener}".', |
| 209 | + ['event' => 'foo', 'listener' => 'closure'], |
| 210 | + ], |
| 211 | + [ |
| 212 | + 'debug', |
| 213 | + 'Listener "{listener}" stopped propagation of the event "{event}".', |
| 214 | + ['event' => 'foo', 'listener' => 'closure'], |
| 215 | + ], |
| 216 | + [ |
| 217 | + 'debug', |
| 218 | + 'Listener "{listener}" was not called for event "{event}".', |
| 219 | + ['event' => 'foo', 'listener' => 'closure'], |
| 220 | + ], |
| 221 | + ], $logger->cleanLogs()); |
205 | 222 | }
|
206 | 223 |
|
207 | 224 | public function testDispatchCallListeners()
|
|
0 commit comments