From 156879f16155882d37a30ba57547d0c1914e596f Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Wed, 10 Oct 2018 15:12:06 +0200 Subject: [PATCH] Update PostgresConnectionTest.php --- .../Connection/PostgresConnectionTest.php | 74 ++++++++++++++++++- 1 file changed, 71 insertions(+), 3 deletions(-) diff --git a/tests/DataStorage/Database/Connection/PostgresConnectionTest.php b/tests/DataStorage/Database/Connection/PostgresConnectionTest.php index e4887eb20..6ba8e44dd 100644 --- a/tests/DataStorage/Database/Connection/PostgresConnectionTest.php +++ b/tests/DataStorage/Database/Connection/PostgresConnectionTest.php @@ -10,15 +10,83 @@ * @version 1.0.0 * @link http://website.orange-management.de */ - namespace phpOMS\tests\DataStorage\Database\Connection; use phpOMS\DataStorage\Database\Connection\PostgresConnection; +use phpOMS\DataStorage\Database\DatabaseStatus; class PostgresConnectionTest extends \PHPUnit\Framework\TestCase { - public function testPlaceholder() + public function testConnect() { - self::markTestIncomplete(); + $psql = new PostgresConnection($GLOBALS['CONFIG']['db']['core']['postgres']['admin']); + self::assertEquals(DatabaseStatus::OK, $psql->getStatus()); + self::assertEquals($GLOBALS['CONFIG']['db']['core']['postgres']['admin']['database'], $psql->getDatabase()); + self::assertEquals($GLOBALS['CONFIG']['db']['core']['postgres']['admin']['host'], $psql->getHost()); + self::assertEquals((int) $GLOBALS['CONFIG']['db']['core']['postgres']['admin']['port'], $psql->getPort()); + self::assertInstanceOf('\phpOMS\DataStorage\Database\Query\Grammar\PostgresGrammar', $psql->getGrammar()); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidDatabaseType() + { + $db = $GLOBALS['CONFIG']['db']['core']['postgres']['admin']; + unset($db['db']); + $psql = new PostgresConnection($db); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidHost() + { + $db = $GLOBALS['CONFIG']['db']['core']['postgres']['admin']; + unset($db['host']); + $psql = new PostgresConnection($db); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidPort() + { + $db = $GLOBALS['CONFIG']['db']['core']['postgres']['admin']; + unset($db['port']); + $psql = new PostgresConnection($db); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidDatabase() + { + $db = $GLOBALS['CONFIG']['db']['core']['masters']['admin']; + unset($db['database']); + $psql = new PostgresConnection($db); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidLogin() + { + $db = $GLOBALS['CONFIG']['db']['core']['postgres']['admin']; + unset($db['login']); + $psql = new PostgresConnection($db); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidPassword() + { + $db = $GLOBALS['CONFIG']['db']['core']['postgres']['admin']; + unset($db['password']); + $psql = new PostgresConnection($db); + } + /** + * @expectedException \phpOMS\DataStorage\Database\Exception\InvalidConnectionConfigException + */ + public function testInvalidDatabaseName() + { + $db = $GLOBALS['CONFIG']['db']['core']['postgres']['admin']; + $db['db'] = 'invalid'; + $psql = new PostgresConnection($db); } }