API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
<?php
|
|
|
|
/**
|
2012-04-12 08:02:46 +02:00
|
|
|
* @package framework
|
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
* @subpackage tests
|
|
|
|
*/
|
|
|
|
class SS_LogTest extends SapphireTest {
|
|
|
|
|
|
|
|
protected $testEmailWriter;
|
|
|
|
|
|
|
|
function setUp() {
|
|
|
|
parent::setUp();
|
2012-02-06 17:52:19 +01:00
|
|
|
|
|
|
|
SS_Log::clear_writers();
|
|
|
|
}
|
|
|
|
|
|
|
|
function tearDown() {
|
|
|
|
parent::tearDown();
|
|
|
|
|
|
|
|
SS_Log::clear_writers();
|
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
function testExistingWriter() {
|
2012-02-06 17:52:19 +01:00
|
|
|
$testEmailWriter = new SS_LogEmailWriter('test@test.com');
|
|
|
|
$testFileWriter = new SS_LogFileWriter('../test.log');
|
|
|
|
SS_Log::add_writer($testEmailWriter, SS_Log::ERR);
|
|
|
|
SS_Log::add_writer($testFileWriter, SS_Log::WARN);
|
|
|
|
|
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
$writers = SS_Log::get_writers();
|
|
|
|
$this->assertEquals(2, count($writers));
|
|
|
|
}
|
|
|
|
|
|
|
|
function testRemoveWriter() {
|
2012-02-06 17:52:19 +01:00
|
|
|
$testEmailWriter = new SS_LogEmailWriter('test@test.com');
|
|
|
|
$testFileWriter = new SS_LogFileWriter('../test.log');
|
|
|
|
SS_Log::add_writer($testEmailWriter, SS_Log::ERR);
|
|
|
|
SS_Log::add_writer($testFileWriter, SS_Log::WARN);
|
|
|
|
|
|
|
|
SS_Log::remove_writer($testEmailWriter);
|
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
$writers = SS_Log::get_writers();
|
2012-05-09 12:43:22 +02:00
|
|
|
|
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
$this->assertEquals(1, count($writers));
|
2012-02-06 17:52:19 +01:00
|
|
|
|
|
|
|
SS_Log::remove_writer($testFileWriter);
|
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 04:06:31 +01:00
|
|
|
$writers = SS_Log::get_writers();
|
|
|
|
$this->assertEquals(0, count($writers));
|
|
|
|
}
|
|
|
|
|
2012-02-06 17:52:19 +01:00
|
|
|
function testEmailWriter() {
|
|
|
|
$testEmailWriter = new SS_LogEmailWriter('test@test.com');
|
|
|
|
SS_Log::add_writer($testEmailWriter, SS_Log::ERR);
|
|
|
|
|
|
|
|
SS_Log::log('Email test', SS_LOG::ERR, array('my-string' => 'test', 'my-array' => array('one' => 1)));
|
|
|
|
$this->assertEmailSent('test@test.com');
|
|
|
|
$email = $this->findEmail('test@test.com');
|
|
|
|
$parser = new CSSContentParser($email['htmlContent']);
|
|
|
|
$extras = $parser->getBySelector('table.extras');
|
|
|
|
$extraRows = $extras[0]->tr;
|
|
|
|
$this->assertContains('my-string', $extraRows[count($extraRows)-2]->td[0]->asXML(), 'Contains extra data key');
|
|
|
|
$this->assertContains('test', $extraRows[count($extraRows)-2]->td[1]->asXML(), 'Contains extra data value');
|
|
|
|
$this->assertContains('my-array', $extraRows[count($extraRows)-1]->td[0]->asXML(), 'Contains extra data key');
|
|
|
|
$this->assertContains(
|
|
|
|
"array('one'=>1,)",
|
|
|
|
str_replace(array("\r", "\n", " "), '', $extraRows[count($extraRows)-1]->td[1]->asXML()),
|
|
|
|
'Serializes arrays correctly'
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2012-03-24 04:04:52 +01:00
|
|
|
}
|