mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-04-02 01:52:10 +09:00
Add unit tests for the Debug class
This commit is contained in:
parent
3045ac9c42
commit
0947bafa66
2 changed files with 82 additions and 6 deletions
|
|
@ -18,6 +18,11 @@ class Debug
|
|||
protected static $_slow_triggers = array();
|
||||
protected static $_slow_widgets = array();
|
||||
|
||||
/**
|
||||
* Also write to error log.
|
||||
*/
|
||||
public static $write_to_error_log = true;
|
||||
|
||||
/**
|
||||
* Get all entries.
|
||||
*
|
||||
|
|
@ -118,9 +123,12 @@ class Debug
|
|||
self::$_entries[] = $entry;
|
||||
|
||||
// Add the entry to the error log.
|
||||
$log_entry = str_replace("\0", '', sprintf('Rhymix Debug: %s in %s on line %d',
|
||||
var_export($message, true), $entry->file, $entry->line));
|
||||
error_log($log_entry);
|
||||
if (self::$write_to_error_log)
|
||||
{
|
||||
$log_entry = str_replace("\0", '', sprintf('Rhymix Debug: %s in %s on line %d',
|
||||
var_export($message, true), $entry->file, $entry->line));
|
||||
error_log($log_entry);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -165,9 +173,12 @@ class Debug
|
|||
);
|
||||
|
||||
// Add the entry to the error log.
|
||||
$log_entry = str_replace("\0", '', sprintf('PHP %s: %s in %s on line %d',
|
||||
$errinfo->type, $errstr, $errfile, intval($errline)));
|
||||
error_log($log_entry);
|
||||
if (self::$write_to_error_log)
|
||||
{
|
||||
$log_entry = str_replace("\0", '', sprintf('PHP %s: %s in %s on line %d',
|
||||
$errinfo->type, $errstr, $errfile, intval($errline)));
|
||||
error_log($log_entry);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
65
tests/Unit/framework/DebugTest.php
Normal file
65
tests/Unit/framework/DebugTest.php
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
<?php
|
||||
|
||||
class DebugTest extends \Codeception\TestCase\Test
|
||||
{
|
||||
public function testDebugEntry()
|
||||
{
|
||||
$file = __FILE__;
|
||||
$line = __LINE__ + 2;
|
||||
Rhymix\Framework\Debug::$write_to_error_log = false;
|
||||
Rhymix\Framework\Debug::addEntry('foobar entry');
|
||||
$entries = Rhymix\Framework\Debug::getEntries();
|
||||
$this->assertEquals(1, count($entries));
|
||||
$this->assertEquals('foobar entry', $entries[0]->message);
|
||||
$this->assertEquals($file, $entries[0]->file);
|
||||
$this->assertEquals($line, $entries[0]->line);
|
||||
}
|
||||
|
||||
public function testDebugError()
|
||||
{
|
||||
$file = __FILE__;
|
||||
$line = __LINE__ + 2;
|
||||
Rhymix\Framework\Debug::$write_to_error_log = false;
|
||||
Rhymix\Framework\Debug::addError(~0, 'Rhymix', $file, $line, null);
|
||||
$errors = Rhymix\Framework\Debug::getErrors();
|
||||
$this->assertEquals(1, count($errors));
|
||||
$this->assertContains('Rhymix', $errors[0]->message);
|
||||
$this->assertEquals($file, $errors[0]->file);
|
||||
$this->assertEquals($line, $errors[0]->line);
|
||||
}
|
||||
|
||||
public function testDebugQuery()
|
||||
{
|
||||
Rhymix\Framework\Debug::addQuery(array(
|
||||
'result' => 'fail',
|
||||
'errno' => 1234,
|
||||
'errstr' => 'This is a unit test',
|
||||
'connection' => 'foobar',
|
||||
'query_id' => 'rhymix.unitTest',
|
||||
'query' => 'SELECT foo FROM bar',
|
||||
'elapsed_time' => 0.1234,
|
||||
'called_file' => __FILE__,
|
||||
'called_line' => __LINE__,
|
||||
'called_method' => 'rhymix.unitTest',
|
||||
'backtrace' => array(),
|
||||
));
|
||||
$queries = Rhymix\Framework\Debug::getQueries();
|
||||
$this->assertEquals(1, count($queries));
|
||||
$this->assertEquals('SELECT foo FROM bar', $queries[0]->query_string);
|
||||
$this->assertEquals('This is a unit test', $queries[0]->message);
|
||||
$this->assertEquals(1234, $queries[0]->error_code);
|
||||
}
|
||||
|
||||
public function testDebugTranslateFilename()
|
||||
{
|
||||
$original_filename = __FILE__;
|
||||
$trans_filename = substr($original_filename, strlen(\RX_BASEDIR));
|
||||
$this->assertEquals($trans_filename, Rhymix\Framework\Debug::translateFilename($original_filename));
|
||||
|
||||
$original_filename = __FILE__;
|
||||
$alias_filename = $original_filename . '.foobar';
|
||||
$trans_filename = substr($alias_filename, strlen(\RX_BASEDIR));
|
||||
Rhymix\Framework\Debug::addFilenameAlias($alias_filename, $original_filename);
|
||||
$this->assertEquals($trans_filename, Rhymix\Framework\Debug::translateFilename($original_filename));
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue