From bfaf4f00cb743bac9d8d851ab47df48f5ce56d5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0koda?= Date: Wed, 29 Jan 2014 17:09:48 +0800 Subject: [PATCH] MDL-43903 prevent adodb error logging output in phpunit execution with native ms sql driver --- auth/db/tests/db_test.php | 8 ++++++++ enrol/database/tests/sync_test.php | 9 +++++++++ 2 files changed, 17 insertions(+) diff --git a/auth/db/tests/db_test.php b/auth/db/tests/db_test.php index 97a1ecae540..9fccdd25025 100644 --- a/auth/db/tests/db_test.php +++ b/auth/db/tests/db_test.php @@ -28,11 +28,17 @@ defined('MOODLE_INTERNAL') || die(); class auth_db_testcase extends advanced_testcase { + /** @var string Original error log */ + protected $oldlog; protected function init_auth_database() { global $DB, $CFG; require_once("$CFG->dirroot/auth/db/auth.php"); + // Discard error logs from AdoDB. + $this->oldlog = ini_get('error_log'); + ini_set('error_log', "$CFG->dataroot/testlog.log"); + $dbman = $DB->get_manager(); set_config('extencoding', 'utf-8', 'auth/db'); @@ -133,6 +139,8 @@ class auth_db_testcase extends advanced_testcase { $dbman = $DB->get_manager(); $table = new xmldb_table('auth_db_users'); $dbman->drop_table($table); + + ini_set('error_log', $this->oldlog); } public function test_plugin() { diff --git a/enrol/database/tests/sync_test.php b/enrol/database/tests/sync_test.php index e46d1b1af9b..9e73cc94984 100644 --- a/enrol/database/tests/sync_test.php +++ b/enrol/database/tests/sync_test.php @@ -31,9 +31,16 @@ class enrol_database_testcase extends advanced_testcase { protected static $users = array(); protected static $roles = array(); + /** @var string Original error log */ + protected $oldlog; + protected function init_enrol_database() { global $DB, $CFG; + // Discard error logs from AdoDB. + $this->oldlog = ini_get('error_log'); + ini_set('error_log', "$CFG->dataroot/testlog.log"); + $dbman = $DB->get_manager(); set_config('dbencoding', 'utf-8', 'enrol_database'); @@ -160,6 +167,8 @@ class enrol_database_testcase extends advanced_testcase { self::$courses = null; self::$users = null; self::$roles = null; + + ini_set('error_log', $this->oldlog); } protected function reset_enrol_database() {