aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_framework
diff options
context:
space:
mode:
authorMarc Alexander <admin@m-a-styles.de>2016-02-12 14:08:47 +0100
committerMate Bartus <mate.bartus@gmail.com>2016-02-12 14:31:30 +0100
commit90710ffe9818fb45d177db4a8b07c70a43972776 (patch)
treee2a9e824db77b151db9dbda7726aa18a8031dbf7 /tests/test_framework
parentd63b5a1315ecf819a412db382c1adcfa39fd9813 (diff)
downloadforums-90710ffe9818fb45d177db4a8b07c70a43972776.tar
forums-90710ffe9818fb45d177db4a8b07c70a43972776.tar.gz
forums-90710ffe9818fb45d177db4a8b07c70a43972776.tar.bz2
forums-90710ffe9818fb45d177db4a8b07c70a43972776.tar.xz
forums-90710ffe9818fb45d177db4a8b07c70a43972776.zip
[ticket/14462] Set instance of db driver for database access using global
PHPBB3-14462
Diffstat (limited to 'tests/test_framework')
-rw-r--r--tests/test_framework/phpbb_ui_test_case.php31
1 files changed, 30 insertions, 1 deletions
diff --git a/tests/test_framework/phpbb_ui_test_case.php b/tests/test_framework/phpbb_ui_test_case.php
index 59f3bdf242..14e84b019d 100644
--- a/tests/test_framework/phpbb_ui_test_case.php
+++ b/tests/test_framework/phpbb_ui_test_case.php
@@ -27,6 +27,7 @@ class phpbb_ui_test_case extends phpbb_test_case
static protected $root_url;
static protected $already_installed = false;
static protected $install_success = false;
+ static protected $db;
static public function setUpBeforeClass()
{
@@ -83,6 +84,17 @@ class phpbb_ui_test_case extends phpbb_test_case
}
}
+ protected function tearDown()
+ {
+ parent::tearDown();
+
+ if (self::$db instanceof \phpbb\db\driver\driver_interface)
+ {
+ // Close the database connections again this test
+ self::$db->sql_close();
+ }
+ }
+
static public function visit($path)
{
self::$webDriver->get(self::$root_url . $path);
@@ -107,10 +119,12 @@ class phpbb_ui_test_case extends phpbb_test_case
static public function install_board()
{
- global $phpbb_root_path, $phpEx;
+ global $phpbb_root_path, $phpEx, $db;
self::recreate_database(self::$config);
+ $db = self::get_db();
+
$config_file = $phpbb_root_path . "config.$phpEx";
$config_file_dev = $phpbb_root_path . "config_dev.$phpEx";
$config_file_test = $phpbb_root_path . "config_test.$phpEx";
@@ -220,4 +234,19 @@ class phpbb_ui_test_case extends phpbb_test_case
$phpbb_container->reset();
unset($phpbb_container, $cache, $phpbb_dispatcher, $request, $user, $auth, $db, $config, $phpbb_log, $symfony_request, $phpbb_filesystem, $phpbb_path_helper, $phpbb_extension_manager, $template);
}
+
+ static protected function get_db()
+ {
+ global $phpbb_root_path, $phpEx;
+ // so we don't reopen an open connection
+ if (!(self::$db instanceof \phpbb\db\driver\driver_interface))
+ {
+ $dbms = self::$config['dbms'];
+ /** @var \phpbb\db\driver\driver_interface $db */
+ $db = new $dbms();
+ $db->sql_connect(self::$config['dbhost'], self::$config['dbuser'], self::$config['dbpasswd'], self::$config['dbname'], self::$config['dbport']);
+ self::$db = $db;
+ }
+ return self::$db;
+ }
}