public function testReadFilter()
{
Session::config(array('primary' => array('adapter' => new Memory(), 'filters' => array()), 'secondary' => array('adapter' => new Memory(), 'filters' => array())));
Session::applyFilter('read', function ($self, $params, $chain) {
$result = $chain->next($self, $params, $chain);
if (isset($params['options']['increment'])) {
$result += $params['options']['increment'];
}
return $result;
});
Session::write('foo', 'bar');
$this->assertEqual('bar', Session::read('foo'));
Session::write('bar', 1);
$this->assertEqual(2, Session::read('bar', array('increment' => 1)));
}