MDL-56354 unittests: Put debug messages in the failure notice.

This commit is contained in:
Russell Smith
2016-10-26 09:27:01 +11:00
parent 3d13576463
commit ca99df58e2
3 changed files with 42 additions and 29 deletions
+10 -6
View File
@@ -82,10 +82,10 @@ abstract class advanced_testcase extends base_testcase {
$DB = phpunit_util::get_global_backup('DB');
// Deal with any debugging messages.
$debugerror = phpunit_util::display_debugging_messages();
$debugerror = phpunit_util::display_debugging_messages(true);
$this->resetDebugging();
if ($debugerror) {
trigger_error('Unexpected debugging() call detected.', E_USER_NOTICE);
if (!empty($debugerror)) {
trigger_error('Unexpected debugging() call detected.'."\n".$debugerror, E_USER_NOTICE);
}
} catch (Exception $ex) {
@@ -280,6 +280,9 @@ abstract class advanced_testcase extends base_testcase {
*/
public function assertDebuggingCalled($debugmessage = null, $debuglevel = null, $message = '') {
$debugging = $this->getDebuggingMessages();
$debugdisplaymessage = "\n".phpunit_util::display_debugging_messages(true);
$this->resetDebugging();
$count = count($debugging);
if ($count == 0) {
@@ -290,12 +293,13 @@ abstract class advanced_testcase extends base_testcase {
}
if ($count > 1) {
if ($message === '') {
$message = 'Expectation failed, debugging() triggered '.$count.' times.';
$message = 'Expectation failed, debugging() triggered '.$count.' times.'.$debugdisplaymessage;
}
$this->fail($message);
}
$this->assertEquals(1, $count);
$message .= $debugdisplaymessage;
$debug = reset($debugging);
if ($debugmessage !== null) {
$this->assertSame($debugmessage, $debug->message, $message);
@@ -303,8 +307,6 @@ abstract class advanced_testcase extends base_testcase {
if ($debuglevel !== null) {
$this->assertSame($debuglevel, $debug->level, $message);
}
$this->resetDebugging();
}
/**
@@ -318,6 +320,8 @@ abstract class advanced_testcase extends base_testcase {
if ($message === '') {
$message = 'Expectation failed, debugging() was triggered.';
}
$message .= "\n".phpunit_util::display_debugging_messages(true);
$this->resetDebugging();
$this->assertEquals(0, $count, $message);
}