|
2 | 2 |
|
3 | 3 | namespace PhpMiddlewareTestTest\RequestId;
|
4 | 4 |
|
| 5 | +use PhpMiddleware\RequestId\Exception\MissingRequestId; |
5 | 6 | use PhpMiddleware\RequestId\MonologProcessor;
|
6 | 7 | use PhpMiddleware\RequestId\RequestIdProviderInterface;
|
7 | 8 |
|
8 | 9 | class MonologProcessorTest extends \PHPUnit_Framework_TestCase
|
9 | 10 | {
|
10 | 11 | protected $processor;
|
| 12 | + /** |
| 13 | + * @var RequestIdProviderInterface|\PHPUnit_Framework_MockObject_MockObject |
| 14 | + */ |
| 15 | + private $requestIdProvider; |
11 | 16 |
|
12 |
| - protected function setUp() |
| 17 | + public function testIsRequestIdInRecord() |
13 | 18 | {
|
14 |
| - $requestIdProvider = $this->getMock(RequestIdProviderInterface::class); |
15 |
| - $requestIdProvider->expects($this->once())->method('getRequestId')->willReturn('boo'); |
| 19 | + $this->requestIdProvider->expects($this->once())->method('getRequestId')->willReturn('boo'); |
| 20 | + $record = ['extra' => []]; |
16 | 21 |
|
17 |
| - $this->processor = new MonologProcessor($requestIdProvider); |
| 22 | + $newRecord = call_user_func($this->processor, $record); |
| 23 | + |
| 24 | + $this->assertArrayHasKey(MonologProcessor::KEY, $newRecord['extra']); |
| 25 | + $this->assertSame('boo', $newRecord['extra'][MonologProcessor::KEY]); |
18 | 26 | }
|
19 | 27 |
|
20 |
| - public function testIsRequestIdInRecord() |
| 28 | + public function testIsMissingRequestIdExceptionHandledProperly() |
21 | 29 | {
|
| 30 | + $this->requestIdProvider->expects($this->once())->method('getRequestId')->willThrowException(new MissingRequestId()); |
22 | 31 | $record = ['extra' => []];
|
23 | 32 |
|
24 | 33 | $newRecord = call_user_func($this->processor, $record);
|
25 | 34 |
|
26 | 35 | $this->assertArrayHasKey(MonologProcessor::KEY, $newRecord['extra']);
|
27 |
| - $this->assertSame('boo', $newRecord['extra'][MonologProcessor::KEY]); |
| 36 | + $this->assertNull($newRecord['extra'][MonologProcessor::KEY]); |
| 37 | + } |
| 38 | + |
| 39 | + protected function setUp() |
| 40 | + { |
| 41 | + $this->requestIdProvider = $this->getMock(RequestIdProviderInterface::class); |
| 42 | + $this->processor = new MonologProcessor($this->requestIdProvider); |
28 | 43 | }
|
29 | 44 | }
|
0 commit comments