diff options
author | Marc Alexander <admin@m-a-styles.de> | 2016-02-12 14:08:47 +0100 |
---|---|---|
committer | Mate Bartus <mate.bartus@gmail.com> | 2016-02-12 14:31:30 +0100 |
commit | 90710ffe9818fb45d177db4a8b07c70a43972776 (patch) | |
tree | e2a9e824db77b151db9dbda7726aa18a8031dbf7 /tests | |
parent | d63b5a1315ecf819a412db382c1adcfa39fd9813 (diff) | |
download | forums-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')
-rw-r--r-- | tests/test_framework/phpbb_ui_test_case.php | 31 |
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; + } } |