From 94bc65e2038407b8b6d2b23c195b232e07208d22 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 26 Mar 2010 16:39:37 +0100 Subject: [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. --- tests/test_framework/phpbb_test_case.php | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) (limited to 'tests/test_framework/phpbb_test_case.php') diff --git a/tests/test_framework/phpbb_test_case.php b/tests/test_framework/phpbb_test_case.php index 3cf2a9d442..af867b29ff 100644 --- a/tests/test_framework/phpbb_test_case.php +++ b/tests/test_framework/phpbb_test_case.php @@ -9,29 +9,19 @@ class phpbb_test_case extends PHPUnit_Framework_TestCase { - protected $expectedTriggerError = false; + protected $test_case_helpers; - public function setExpectedTriggerError($errno, $message = '') + public function init_test_case_helpers() { - $exceptionName = ''; - switch ($errno) + if (!$this->test_case_helpers) { - case E_NOTICE: - case E_STRICT: - PHPUnit_Framework_Error_Notice::$enabled = true; - $exceptionName = 'PHPUnit_Framework_Error_Notice'; - break; - - case E_WARNING: - PHPUnit_Framework_Error_Warning::$enabled = true; - $exceptionName = 'PHPUnit_Framework_Error_Warning'; - break; - - default: - $exceptionName = 'PHPUnit_Framework_Error'; - break; + $this->test_case_helpers = new phpbb_test_case_helpers($this); } - $this->expectedTriggerError = true; - $this->setExpectedException($exceptionName, (string) $message, $errno); + } + + public function setExpectedTriggerError($errno, $message = '') + { + $this->init_test_case_helpers(); + $this->test_case_helpers->setExpectedTriggerError($errno, $message); } } -- cgit v1.2.1