1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-05-06 07:35:29 +02:00
php-phpbb/tests/test_framework/phpbb_database_test_case.php
Joas Schilling 94bc65e203 [feature/dbal-tests] Added database test & refactored test framework
There is now a phpbb_database_test_case which can be used as a base class for tests that require database access. You have to set up a test_config.php file in your tests/ directory containing host, user, pass etc.

Extra test functionality has been moved to phpbb_test_case_helpers to provide the same functionality in database tests and regular tests without duplicating the code. This is achieved through delegation of method calls.
2010-03-26 16:39:37 +01:00

43 lines
1.1 KiB
PHP

<?php
/**
*
* @package testing
* @copyright (c) 2008 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
abstract class phpbb_database_test_case extends PHPUnit_Extensions_Database_TestCase
{
protected $test_case_helpers;
public function init_test_case_helpers()
{
if (!$this->test_case_helpers)
{
$this->test_case_helpers = new phpbb_test_case_helpers($this);
}
}
public function getConnection()
{
$this->init_test_case_helpers();
$database_config = $this->test_case_helpers->get_database_config();
$pdo = new PDO('mysql:host=' . $database_config['dbhost'] . ';dbname=' . $database_config['dbname'], $database_config['dbuser'], $database_config['dbpasswd']);
return $this->createDefaultDBConnection($pdo, 'testdb');
}
public function new_dbal()
{
$this->init_test_case_helpers();
return $this->test_case_helpers->new_dbal();
}
public function setExpectedTriggerError($errno, $message = '')
{
$this->init_test_case_helpers();
$this->test_case_helpers->setExpectedTriggerError($errno, $message);
}
}