diff options
author | Igor Scheller <igor.scheller@igorshp.de> | 2017-10-31 13:40:13 +0100 |
---|---|---|
committer | Igor Scheller <igor.scheller@igorshp.de> | 2017-10-31 13:40:13 +0100 |
commit | 60fd72cd1a1e4e53b9af87e00a8c27687c6b5385 (patch) | |
tree | bcf250d05a49a848644af44f09fb897467e3ecb0 /tests/Unit/Logger/LoggerServiceProviderTest.php | |
parent | fb05a38a963784716c105e7f214615ad13d2f272 (diff) |
Added service providers
Diffstat (limited to 'tests/Unit/Logger/LoggerServiceProviderTest.php')
-rw-r--r-- | tests/Unit/Logger/LoggerServiceProviderTest.php | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/tests/Unit/Logger/LoggerServiceProviderTest.php b/tests/Unit/Logger/LoggerServiceProviderTest.php new file mode 100644 index 00000000..5143d236 --- /dev/null +++ b/tests/Unit/Logger/LoggerServiceProviderTest.php @@ -0,0 +1,47 @@ +<?php + +namespace Engelsystem\Test\Logger; + +use Engelsystem\Application; +use Engelsystem\Logger\EngelsystemLogger; +use Engelsystem\Logger\LoggerServiceProvider; +use PHPUnit\Framework\TestCase; +use PHPUnit_Framework_MockObject_MockObject; +use Psr\Log\LoggerInterface; + +class LoggerServiceProviderTest extends TestCase +{ + /** + * @covers \Engelsystem\Logger\LoggerServiceProvider::register() + */ + public function testRegister() + { + /** @var PHPUnit_Framework_MockObject_MockObject|EngelsystemLogger $logger */ + $logger = $this->getMockBuilder(EngelsystemLogger::class) + ->getMock(); + + /** @var PHPUnit_Framework_MockObject_MockObject|Application $app */ + $app = $this->getMockBuilder(Application::class) + ->setMethods(['make', 'instance', 'bind']) + ->getMock(); + + $app->expects($this->once()) + ->method('make') + ->with(EngelsystemLogger::class) + ->willReturn($logger); + + $app->expects($this->once()) + ->method('instance') + ->with('logger', $logger); + + $app->expects($this->atLeastOnce()) + ->method('bind') + ->withConsecutive( + [LoggerInterface::class, 'logger'], + [EngelsystemLogger::class, 'logger'] + ); + + $serviceProvider = new LoggerServiceProvider($app); + $serviceProvider->register(); + } +} |