2016-04-04 09:47:17 +00:00
|
|
|
<?php namespace phpunit;
|
|
|
|
|
|
|
|
class Database_construct extends \PHPUnit_Framework_TestCase{
|
|
|
|
|
|
|
|
/* [1] Verification du chargement de la config
|
|
|
|
=========================================================*/
|
|
|
|
public function testGetInstanceWithNoSERVER(){
|
2016-11-05 10:56:03 +00:00
|
|
|
$instance = \database\core\DatabaseDriver::getInstance();
|
2016-04-04 09:47:17 +00:00
|
|
|
|
|
|
|
$this->assertEquals( 'localhost', $instance->getConfig()['host'] );
|
|
|
|
}
|
|
|
|
|
|
|
|
public function testGetInstanceWithSERVERLocal(){
|
|
|
|
// Pour regenerer une instance, on definit une erreur
|
2016-11-05 10:56:03 +00:00
|
|
|
\database\core\DatabaseDriver::$error = \manager\ManagerError::PDOConnection;
|
2016-04-04 09:47:17 +00:00
|
|
|
|
|
|
|
|
2016-11-05 10:56:03 +00:00
|
|
|
$instance = \database\core\DatabaseDriver::getInstance();
|
2016-04-04 09:47:17 +00:00
|
|
|
|
|
|
|
$this->assertEquals( 'localhost', $instance->getConfig()['host'] );
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* [2] Verification du singleton (getInstance)
|
|
|
|
=========================================================*/
|
|
|
|
public function testInstancePersistence(){
|
2016-11-05 10:56:03 +00:00
|
|
|
\database\core\DatabaseDriver::$error = \manager\ManagerError::PDOConnection;
|
2016-04-04 09:47:17 +00:00
|
|
|
|
2016-11-05 10:56:03 +00:00
|
|
|
$instance_construct = \database\core\DatabaseDriver::getInstance();
|
|
|
|
$instance_nextuse = \database\core\DatabaseDriver::getInstance();
|
2016-04-04 09:47:17 +00:00
|
|
|
|
|
|
|
$this->assertSame( $instance_construct, $instance_nextuse );
|
|
|
|
}
|
|
|
|
|
|
|
|
public function testInstancePersistenceRefutation(){
|
2016-11-05 10:56:03 +00:00
|
|
|
\database\core\DatabaseDriver::$error = \manager\ManagerError::PDOConnection;
|
|
|
|
$instance_construct = \database\core\DatabaseDriver::getInstance();
|
2016-04-04 09:47:17 +00:00
|
|
|
|
2016-11-05 10:56:03 +00:00
|
|
|
\database\core\DatabaseDriver::$error = \manager\ManagerError::PDOConnection;
|
|
|
|
$instance_nextuse = \database\core\DatabaseDriver::getInstance();
|
2016-04-04 09:47:17 +00:00
|
|
|
|
|
|
|
$this->assertNotSame( $instance_construct, $instance_nextuse );
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* [3] Verification de l'objet PDO
|
|
|
|
=========================================================*/
|
|
|
|
public function testPDO(){
|
2016-11-05 10:56:03 +00:00
|
|
|
$pdo = \database\core\DatabaseDriver::getPDO();
|
2016-04-04 09:47:17 +00:00
|
|
|
|
2016-04-17 10:49:40 +00:00
|
|
|
$this->assertGreaterThan( 0, count($pdo->query('SELECT * FROM users')->fetchAll()), '[!] Aucun utilisateur trouve.');
|
2016-04-04 09:47:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
?>
|