diff options
Diffstat (limited to 'tests/Feature')
-rw-r--r-- | tests/Feature/Database/DatabaseServiceProviderTest.php | 40 | ||||
-rw-r--r-- | tests/Feature/Database/DatabaseTest.php | 25 | ||||
-rw-r--r-- | tests/Feature/Logger/EngelsystemLoggerTest.php | 4 | ||||
-rw-r--r-- | tests/Feature/Model/LogEntriesModelTest.php (renamed from tests/Feature/model/LogEntriesModelTest.php) | 4 | ||||
-rw-r--r-- | tests/Feature/Model/RoomModelTest.php (renamed from tests/Feature/model/RoomModelTest.php) | 4 |
5 files changed, 71 insertions, 6 deletions
diff --git a/tests/Feature/Database/DatabaseServiceProviderTest.php b/tests/Feature/Database/DatabaseServiceProviderTest.php new file mode 100644 index 00000000..d5fdd108 --- /dev/null +++ b/tests/Feature/Database/DatabaseServiceProviderTest.php @@ -0,0 +1,40 @@ +<?php + +namespace Engelsystem\Test\Feature\Database; + +use Engelsystem\Application; +use Engelsystem\Config\Config; +use Engelsystem\Database\DatabaseServiceProvider; +use PHPUnit_Framework_MockObject_MockObject as MockObject; + +class DatabaseServiceProviderTest extends DatabaseTest +{ + /** + * @covers \Engelsystem\Database\DatabaseServiceProvider::register() + */ + public function testRegister() + { + /** @var MockObject|Config $config */ + $config = $this->getMockBuilder(Config::class) + ->getMock(); + + /** @var MockObject|Application $app */ + $app = $this->getMockBuilder(Application::class) + ->setMethods(['get']) + ->getMock(); + Application::setInstance($app); + + $app->expects($this->once()) + ->method('get') + ->with('config') + ->willReturn($config); + + $config->expects($this->atLeastOnce()) + ->method('get') + ->with('database') + ->willReturn($this->getDbConfig()); + + $serviceProvider = new DatabaseServiceProvider($app); + $serviceProvider->register(); + } +} diff --git a/tests/Feature/Database/DatabaseTest.php b/tests/Feature/Database/DatabaseTest.php new file mode 100644 index 00000000..11df6779 --- /dev/null +++ b/tests/Feature/Database/DatabaseTest.php @@ -0,0 +1,25 @@ +<?php + +namespace Engelsystem\Test\Feature\Database; + +use PHPUnit\Framework\TestCase; + +abstract class DatabaseTest extends TestCase +{ + /** + * Returns the database config + * + * @return string[] + */ + protected function getDbConfig() + { + $configValues = require __DIR__ . '/../../../config/config.default.php'; + $configFile = __DIR__ . '/../../../config/config.php'; + + if (file_exists($configFile)) { + $configValues = array_replace_recursive($configValues, require $configFile); + } + + return $configValues['database']; + } +} diff --git a/tests/Feature/Logger/EngelsystemLoggerTest.php b/tests/Feature/Logger/EngelsystemLoggerTest.php index 63a01318..8886d4ba 100644 --- a/tests/Feature/Logger/EngelsystemLoggerTest.php +++ b/tests/Feature/Logger/EngelsystemLoggerTest.php @@ -1,6 +1,6 @@ <?php -namespace Engelsystem\Test\Logger; +namespace Engelsystem\Test\Feature\Logger; use Engelsystem\Logger\EngelsystemLogger; use PHPUnit\Framework\TestCase; @@ -12,7 +12,7 @@ class EngelsystemLoggerTest extends TestCase { public static function setUpBeforeClass() { - require_once __DIR__ . '/../../../includes/engelsystem_provider.php'; + require_once __DIR__ . '/../../../includes/engelsystem.php'; } /** diff --git a/tests/Feature/model/LogEntriesModelTest.php b/tests/Feature/Model/LogEntriesModelTest.php index 6d7b0ebc..036f5692 100644 --- a/tests/Feature/model/LogEntriesModelTest.php +++ b/tests/Feature/Model/LogEntriesModelTest.php @@ -1,6 +1,6 @@ <?php -namespace Engelsystem\Test; +namespace Engelsystem\Test\Feature\Model; use PHPUnit\Framework\TestCase; use Psr\Log\LogLevel; @@ -9,7 +9,7 @@ class LogEntriesModelTest extends TestCase { public static function setUpBeforeClass() { - require_once __DIR__ . '/../../../includes/engelsystem_provider.php'; + require_once __DIR__ . '/../../../includes/engelsystem.php'; } public function testCreateLogEntry() diff --git a/tests/Feature/model/RoomModelTest.php b/tests/Feature/Model/RoomModelTest.php index 96be84a2..3114ba2d 100644 --- a/tests/Feature/model/RoomModelTest.php +++ b/tests/Feature/Model/RoomModelTest.php @@ -1,6 +1,6 @@ <?php -namespace Engelsystem\Test; +namespace Engelsystem\Test\Feature\Model; use PHPUnit\Framework\TestCase; @@ -10,7 +10,7 @@ class RoomModelTest extends TestCase public static function setUpBeforeClass() { - require_once __DIR__ . '/../../../includes/engelsystem_provider.php'; + require_once __DIR__ . '/../../../includes/engelsystem.php'; } public function create_Room() |