public function testMultipleFieldMultipleAccepted()
{
$this->specify('Test identical with multiple field and accepted.', function () {
$validation = new Validation();
$validationMessages = ['name' => 'Name must be SomeValue.', 'anotherName' => 'AnotherName must be SomeAnotherValue.'];
$validation->add(['name', 'anotherName'], new Validation\Validator\Identical(['accepted' => ['name' => 'SomeValue', 'anotherName' => 'SomeAnotherValue'], 'message' => $validationMessages]));
$messages = $validation->validate(['name' => 'SomeValue', 'anotherName' => 'SomeAnotherValue']);
expect($messages->count())->equals(0);
$messages = $validation->validate(['name' => 'SomeValue123', 'anotherName' => 'SomeAnotherValue']);
expect($messages->count())->equals(1);
expect($messages->offsetGet(0)->getMessage())->equals($validationMessages['name']);
$messages = $validation->validate(['name' => 'SomeValue', 'anotherName' => 'SomeAnotherValue123']);
expect($messages->count())->equals(1);
expect($messages->offsetGet(0)->getMessage())->equals($validationMessages['anotherName']);
$messages = $validation->validate(['name' => 'SomeValue123', 'anotherName' => 'SomeAnotherValue123']);
expect($messages->count())->equals(2);
expect($messages->offsetGet(0)->getMessage())->equals($validationMessages['name']);
expect($messages->offsetGet(1)->getMessage())->equals($validationMessages['anotherName']);
});
}