public function testValidationFiltering() { $this->specify("Validation filtering doesn't work as expected", function () { $validation = new Validation(); $validation->setDI(new FactoryDefault()); $validation->add('name', new Validation\Validator\PresenceOf(array('message' => 'The name is required')))->add('email', new Validation\Validator\PresenceOf(array('message' => 'The email is required'))); $validation->setFilters('name', 'trim'); $validation->setFilters('email', 'trim'); $messages = $validation->validate(['name' => ' ', 'email' => ' ']); expect($messages)->count(2); $filtered = $messages->filter('email'); $expectedMessages = array(0 => Message::__set_state(array('_type' => 'PresenceOf', '_message' => 'The email is required', '_field' => 'email', '_code' => '0'))); expect($filtered)->equals($expectedMessages); }); }