diff options
Diffstat (limited to 'tests/Unit/Container')
-rw-r--r-- | tests/Unit/Container/ContainerTest.php | 104 | ||||
-rw-r--r-- | tests/Unit/Container/ServiceProviderTest.php | 22 | ||||
-rw-r--r-- | tests/Unit/Container/Stub/ServiceProviderImplementation.php | 10 |
3 files changed, 32 insertions, 104 deletions
diff --git a/tests/Unit/Container/ContainerTest.php b/tests/Unit/Container/ContainerTest.php deleted file mode 100644 index 89c34209..00000000 --- a/tests/Unit/Container/ContainerTest.php +++ /dev/null @@ -1,104 +0,0 @@ -<?php - -namespace Engelsystem\Test\Config; - -use Engelsystem\Container\Container; -use PHPUnit\Framework\TestCase; - -class ContainerTest extends TestCase -{ - /** - * @covers \Engelsystem\Container\Container::get - */ - public function testGet() - { - $container = new Container(); - $class = new class - { - }; - - $container->instance('foo', $class); - $this->assertSame($class, $container->get('foo')); - } - - /** - * @covers \Engelsystem\Container\Container::get - * @expectedException \Engelsystem\Container\NotFoundException - */ - public function testGetException() - { - $container = new Container(); - - $container->get('not.registered.service'); - } - - /** - * @covers \Engelsystem\Container\Container::instance - * @covers \Engelsystem\Container\Container::resolve - */ - public function testInstance() - { - $container = new Container(); - $class = new class - { - }; - - $container->instance('foo', $class); - $this->assertSame($class, $container->get('foo')); - } - - /** - * @covers \Engelsystem\Container\Container::has - */ - public function testHas() - { - $container = new Container(); - - $this->assertFalse($container->has('test')); - - $class = new class - { - }; - - $container->instance('test', $class); - $this->assertTrue($container->has('test')); - } - - /** - * @covers \Engelsystem\Container\Container::singleton - */ - public function testSingleton() - { - $container = new Container(); - $class = new class - { - }; - - $container->singleton('foo', $class); - $this->assertSame($class, $container->get('foo')); - $this->assertSame($class, $container->get('foo')); - } - - /** - * @covers \Engelsystem\Container\Container::setInstance - * @covers \Engelsystem\Container\Container::getInstance - */ - public function testContainerSingleton() - { - // Ensure that no container has been initialized - $reflection = new \ReflectionProperty(Container::class, 'instance'); - $reflection->setAccessible(true); - $reflection->setValue(null, null); - $reflection->setAccessible(false); - - $container0 = new Container(); - $container = Container::getInstance(); - - $this->assertNotSame($container0, $container); - - $container1 = new Container; - Container::setInstance($container1); - - $this->assertSame($container1, Container::getInstance()); - } -} diff --git a/tests/Unit/Container/ServiceProviderTest.php b/tests/Unit/Container/ServiceProviderTest.php new file mode 100644 index 00000000..8a9cb76e --- /dev/null +++ b/tests/Unit/Container/ServiceProviderTest.php @@ -0,0 +1,22 @@ +<?php + +namespace Engelsystem\Test\Unit\Container; + +use Engelsystem\Container\ServiceProvider; +use Engelsystem\Test\Unit\Container\Stub\ServiceProviderImplementation; +use Engelsystem\Test\Unit\ServiceProviderTest; + +class ConfigServiceProviderTest extends ServiceProviderTest +{ + /** + * @covers \Engelsystem\Container\ServiceProvider::__construct + */ + public function testRegister() + { + $app = $this->getApp(); + + $serviceProvider = new ServiceProviderImplementation($app); + + $this->assertInstanceOf(ServiceProvider::class, $serviceProvider); + } +} diff --git a/tests/Unit/Container/Stub/ServiceProviderImplementation.php b/tests/Unit/Container/Stub/ServiceProviderImplementation.php new file mode 100644 index 00000000..36ae2c38 --- /dev/null +++ b/tests/Unit/Container/Stub/ServiceProviderImplementation.php @@ -0,0 +1,10 @@ +<?php + +namespace Engelsystem\Test\Unit\Container\Stub; + +use Engelsystem\Container\ServiceProvider; + +class ServiceProviderImplementation extends ServiceProvider +{ + +} |