Skip to content

Commit 1279f52

Browse files
committed
Make CakeValidationValidationConverter non static
1 parent 8cc3918 commit 1279f52

File tree

4 files changed

+43
-6
lines changed

4 files changed

+43
-6
lines changed

src/Converter/CakeValidationValidationConverter.php renamed to src/Converter/CakeValidationConverter.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
/**
88
* CakePHP validation error convert.
99
*/
10-
final class CakeValidationValidationConverter implements ValidationConverterInterface
10+
final class CakeValidationConverter implements ValidationConverterInterface
1111
{
1212
/**
1313
* Create validation result from array with errors.
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<?php
2+
3+
namespace Selective\Validation\Converter;
4+
5+
use Selective\Validation\ValidationResult;
6+
7+
/**
8+
* Valitron validation error collector.
9+
*/
10+
final class ValitronValidationValidationConverter implements ValidationConverterInterface
11+
{
12+
/**
13+
* Create validation result from array with errors.
14+
*
15+
* @param array $errors The errors
16+
*
17+
* @return ValidationResult The result
18+
*/
19+
public function createValidationResult($errors): ValidationResult
20+
{
21+
$result = new ValidationResult();
22+
23+
$fields = [];
24+
25+
foreach ($errors as $field => $message) {
26+
if (isset($fields[$field])) {
27+
continue;
28+
}
29+
30+
$result->addError($field, $message);
31+
32+
$fields[$field] = 1;
33+
}
34+
35+
return $result;
36+
}
37+
}

src/Factory/CakeValidationFactory.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
namespace Selective\Validation\Factory;
44

55
use Cake\Validation\Validator;
6-
use Selective\Validation\Converter\CakeValidationValidationConverter;
6+
use Selective\Validation\Converter\CakeValidationConverter;
77
use Selective\Validation\ValidationResult;
88

99
/**
@@ -30,6 +30,6 @@ public function createValidator(): Validator
3030
*/
3131
public function createValidationResult(array $errors): ValidationResult
3232
{
33-
return (new CakeValidationValidationConverter())->createValidationResult($errors);
33+
return (new CakeValidationConverter())->createValidationResult($errors);
3434
}
3535
}

tests/Converter/CakeValidationFactoryTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
namespace Selective\Validation\Test\Converter;
44

55
use PHPUnit\Framework\TestCase;
6-
use Selective\Validation\Converter\CakeValidationValidationConverter;
6+
use Selective\Validation\Converter\CakeValidationConverter;
77
use Selective\Validation\Transformer\ErrorDetailsResultTransformer;
88
use Selective\Validation\ValidationResult;
99

@@ -31,7 +31,7 @@ private function getValidationResultAsArray(ValidationResult $validationResult):
3131
*/
3232
public function testCreateResultFromErrorsSimple()
3333
{
34-
$result = (new CakeValidationValidationConverter())->createValidationResult([
34+
$result = (new CakeValidationConverter())->createValidationResult([
3535
'first_name' => [
3636
'_empty' => 'This field cannot be left empty',
3737
],
@@ -104,7 +104,7 @@ public function testCreateResultFromErrorsSimple()
104104
*/
105105
public function testCreateResultFromErrorsNestedArray()
106106
{
107-
$result = (new CakeValidationValidationConverter())->createValidationResult([
107+
$result = (new CakeValidationConverter())->createValidationResult([
108108
'bills' => [
109109
0 => [
110110
'billing_number' => [

0 commit comments

Comments
 (0)