|
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