public function testWriteFilter()
{
$base = Libraries::get(true, 'resources') . '/tmp/logs';
$this->skipIf(!is_writable($base), "Path `{$base}` is not writable.");
Filters::apply('lithium\\analysis\\Logger', 'write', function ($self, $params, $chain) {
$params['message'] = 'Filtered Message';
return $chain->next($self, $params, $chain);
});
$config = array('default' => array('adapter' => 'File', 'timestamp' => false, 'format' => "{:message}\n"));
Logger::config($config);
$result = Logger::write('info', 'Original Message');
$this->assertFileExists($base . '/info.log');
$expected = "Filtered Message\n";
$result = file_get_contents($base . '/info.log');
$this->assertEqual($expected, $result);
Filters::apply('lithium\\analysis\\Logger', 'write', false);
unlink($base . '/info.log');
}