mirror of
https://github.com/Respect/Validation.git
synced 2024-06-22 07:16:32 +02:00
Refactored all mentions of "message" to "message template" for further refactorings
This commit is contained in:
parent
7012d62e0e
commit
df3533c9c8
|
@ -22,9 +22,9 @@ abstract class AbstractComposite extends AbstractRule implements Validatable
|
|||
protected function appendRule(Validatable $validator)
|
||||
{
|
||||
$this->rules[spl_object_hash($validator)] = $validator;
|
||||
$this->messages = array_merge(
|
||||
$this->messages, $validator->getMessages()
|
||||
);
|
||||
$this->setMessageTemplates(array_merge(
|
||||
$this->getMessageTemplates(), $validator->getMessageTemplates()
|
||||
));
|
||||
}
|
||||
|
||||
public function addRule($validator, $arguments=array())
|
||||
|
|
|
@ -5,27 +5,27 @@ namespace Respect\Validation\Rules;
|
|||
abstract class AbstractRule
|
||||
{
|
||||
|
||||
protected $messages = array();
|
||||
protected $messageTemplates = array();
|
||||
|
||||
public function setMessage($code, $message)
|
||||
public function setMessageTemplate($code, $template)
|
||||
{
|
||||
$this->messages[$code] = $message;
|
||||
$this->messageTemplates[$code] = $template;
|
||||
}
|
||||
|
||||
public function getMessage($code)
|
||||
public function getMessageTemplate($code)
|
||||
{
|
||||
return $this->messages[$code];
|
||||
return $this->messageTemplates[$code];
|
||||
}
|
||||
|
||||
public function setMessages(array $messages)
|
||||
public function setMessageTemplates(array $templates)
|
||||
{
|
||||
foreach ($messages as $code => $message)
|
||||
$this->setMessage($code, $message);
|
||||
foreach ($templates as $code => $message)
|
||||
$this->setMessageTemplate($code, $message);
|
||||
}
|
||||
|
||||
public function getMessages()
|
||||
public function getMessageTemplates()
|
||||
{
|
||||
return $this->messages;
|
||||
return $this->messageTemplates;
|
||||
}
|
||||
|
||||
protected function getStringRepresentation($mixed)
|
||||
|
|
|
@ -10,7 +10,7 @@ class Alnum extends AbstractRule implements Validatable
|
|||
{
|
||||
const MSG_NOT_ALPHANUMERIC = 'Alnum_1';
|
||||
const MSG_NOT_ALPHANUMERIC_ADDITIONAL = 'Alnum_2';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_NOT_ALPHANUMERIC => '%s does not contains only letters and digits',
|
||||
self::MSG_NOT_ALPHANUMERIC_ADDITIONAL => '%s does not contains only letters and digits (including %s)'
|
||||
);
|
||||
|
@ -33,13 +33,13 @@ class Alnum extends AbstractRule implements Validatable
|
|||
if (!$this->validate($input))
|
||||
if (empty($this->additionalChars))
|
||||
throw new NotAlphanumericException(
|
||||
sprintf($this->getMessage(self::MSG_NOT_ALPHANUMERIC),
|
||||
sprintf($this->getMessageTemplate(self::MSG_NOT_ALPHANUMERIC),
|
||||
$input)
|
||||
);
|
||||
else
|
||||
throw new NotAlphanumericException(
|
||||
sprintf(
|
||||
$this->getMessage(self::MSG_NOT_ALPHANUMERIC_ADDITIONAL),
|
||||
$this->getMessageTemplate(self::MSG_NOT_ALPHANUMERIC_ADDITIONAL),
|
||||
$input, $this->additionalChars
|
||||
)
|
||||
);
|
||||
|
|
|
@ -9,7 +9,7 @@ use Respect\Validation\Exceptions\CallbackException;
|
|||
class Callback extends AbstractRule implements Validatable
|
||||
{
|
||||
const MSG_CALLBACK = 'Callback_1';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_CALLBACK => '%s does not validate against the provided callback.'
|
||||
);
|
||||
protected $callback;
|
||||
|
@ -28,7 +28,7 @@ class Callback extends AbstractRule implements Validatable
|
|||
{
|
||||
if (!$this->validate($input))
|
||||
throw new CallbackException(
|
||||
sprintf($this->getMessage(self::MSG_CALLBACK),
|
||||
sprintf($this->getMessageTemplate(self::MSG_CALLBACK),
|
||||
$this->getStringRepresentation($input)
|
||||
)
|
||||
);
|
||||
|
|
|
@ -10,7 +10,7 @@ class Date extends AbstractDate implements Validatable
|
|||
{
|
||||
const MSG_INVALID_DATE = 'Date_1';
|
||||
const MSG_INVALID_FORMAT = 'Date_2';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_INVALID_DATE => '%s is not a valid date reference',
|
||||
self::MSG_INVALID_FORMAT => '%s is not a valid date in the %s format',
|
||||
);
|
||||
|
@ -33,12 +33,13 @@ class Date extends AbstractDate implements Validatable
|
|||
if (!$this->validate($input))
|
||||
if (is_null($this->format))
|
||||
throw new InvalidDate(
|
||||
sprintf($this->getMessage(static::MSG_INVALID_DATE), $input)
|
||||
sprintf($this->getMessageTemplate(static::MSG_INVALID_DATE),
|
||||
$input)
|
||||
);
|
||||
else
|
||||
throw new InvalidDate(
|
||||
sprintf(
|
||||
$this->getMessage(static::MSG_INVALID_FORMAT), $input,
|
||||
$this->getMessageTemplate(static::MSG_INVALID_FORMAT), $input,
|
||||
$this->format
|
||||
)
|
||||
);
|
||||
|
|
|
@ -15,7 +15,7 @@ class DateBetween extends AbstractDate implements Validatable
|
|||
|
||||
protected $min;
|
||||
protected $max;
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_OUT_OF_BOUNDS => '%s is not between %s and %s.'
|
||||
);
|
||||
|
||||
|
@ -48,7 +48,7 @@ class DateBetween extends AbstractDate implements Validatable
|
|||
if (!$this->validate($target))
|
||||
throw new DateOutOfBoundsException(
|
||||
sprintf(
|
||||
$this->getMessage(self::MSG_OUT_OF_BOUNDS),
|
||||
$this->getMessageTemplate(self::MSG_OUT_OF_BOUNDS),
|
||||
$this->formatDate($target), $this->formatDate($this->min),
|
||||
$this->formatDate($this->max)
|
||||
)
|
||||
|
|
|
@ -10,7 +10,7 @@ use Respect\Validation\Rules\All;
|
|||
class HasAttribute extends All implements Validatable
|
||||
{
|
||||
const MSG_ATTRIBUTE_NOT_PRESENT = 'NullValue_1';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_ATTRIBUTE_NOT_PRESENT => 'Object does not have the attribute %s'
|
||||
);
|
||||
protected $attribute = '';
|
||||
|
@ -33,7 +33,7 @@ class HasAttribute extends All implements Validatable
|
|||
if (!$this->validate($input))
|
||||
throw new AttributeNotPresentException(
|
||||
sprintf(
|
||||
$this->getMessage(self::MSG_ATTRIBUTE_NOT_PRESENT),
|
||||
$this->getMessageTemplate(self::MSG_ATTRIBUTE_NOT_PRESENT),
|
||||
$this->attribute
|
||||
)
|
||||
);
|
||||
|
|
|
@ -9,7 +9,7 @@ use Respect\Validation\Exceptions\WhitespaceFoundException;
|
|||
class NoWhitespace extends AbstractRule implements Validatable
|
||||
{
|
||||
const MSG_WHITESPACE_FOUND = 'NoWhitespace_1';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_WHITESPACE_FOUND => '%s contains spaces, tabs, line breaks or other not allowed charaters.'
|
||||
);
|
||||
|
||||
|
@ -22,7 +22,7 @@ class NoWhitespace extends AbstractRule implements Validatable
|
|||
{
|
||||
if (!$this->validate($input))
|
||||
throw new WhitespaceFoundException(
|
||||
sprintf($this->getMessage(self::MSG_WHITESPACE_FOUND), $input)
|
||||
sprintf($this->getMessageTemplate(self::MSG_WHITESPACE_FOUND), $input)
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@ use Respect\Validation\Exceptions\NotNullException;
|
|||
class NullValue extends AbstractRule implements Validatable
|
||||
{
|
||||
const MSG_NOT_NULL = 'NullValue_1';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_NOT_NULL => '%s is not null'
|
||||
);
|
||||
|
||||
|
@ -22,7 +22,7 @@ class NullValue extends AbstractRule implements Validatable
|
|||
{
|
||||
if (!$this->validate($input))
|
||||
throw new NotNullException(
|
||||
sprintf($this->getMessage(self::MSG_NOT_NULL), $input)
|
||||
sprintf($this->getMessageTemplate(self::MSG_NOT_NULL), $input)
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@ use Respect\Validation\Exceptions\NotNumericException;
|
|||
class Numeric extends AbstractRule implements Validatable
|
||||
{
|
||||
const MSG_NOT_NUMERIC = 'Numeric_1';
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_NOT_NUMERIC => '%s is not a numeric value'
|
||||
);
|
||||
|
||||
|
@ -22,7 +22,7 @@ class Numeric extends AbstractRule implements Validatable
|
|||
{
|
||||
if (!$this->validate($input))
|
||||
throw new NotNumericException(
|
||||
sprintf($this->getMessage(self::MSG_NOT_NUMERIC), $input)
|
||||
sprintf($this->getMessageTemplate(self::MSG_NOT_NUMERIC), $input)
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@ class StringLength extends AbstractRule implements Validatable
|
|||
const MSG_LENGTH_MIN = 'StringLength_1';
|
||||
const MSG_LENGTH_MAX = 'StringLength_2';
|
||||
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_LENGTH_MIN => '%s does not have at least %s characters',
|
||||
self::MSG_LENGTH_MAX => '%s exceeds the maximum of %s characters'
|
||||
);
|
||||
|
@ -60,11 +60,13 @@ class StringLength extends AbstractRule implements Validatable
|
|||
{
|
||||
if (!$this->validateMin($input))
|
||||
throw new StringLengthException(
|
||||
sprintf($this->getMessage(self::MSG_LENGTH_MIN), $input, $this->min)
|
||||
sprintf($this->getMessageTemplate(self::MSG_LENGTH_MIN), $input,
|
||||
$this->min)
|
||||
);
|
||||
if (!$this->validateMax($input))
|
||||
throw new StringLengthException(
|
||||
sprintf($this->getMessage(self::MSG_LENGTH_MAX), $input, $this->max)
|
||||
sprintf($this->getMessageTemplate(self::MSG_LENGTH_MAX), $input,
|
||||
$this->max)
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ class StringNotEmpty extends AbstractRule implements Validatable
|
|||
{
|
||||
const MSG_EMPTY_STRING = 'StringNotEmpty_1';
|
||||
|
||||
protected $messages = array(
|
||||
protected $messageTemplates = array(
|
||||
self::MSG_EMPTY_STRING => 'You provided an empty string'
|
||||
);
|
||||
|
||||
|
@ -24,7 +24,7 @@ class StringNotEmpty extends AbstractRule implements Validatable
|
|||
{
|
||||
if (!$this->validate($input))
|
||||
throw new EmptyStringException(
|
||||
$this->getMessage(self::MSG_EMPTY_STRING)
|
||||
$this->getMessageTemplate(self::MSG_EMPTY_STRING)
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -9,7 +9,11 @@ interface Validatable
|
|||
|
||||
public function validate($input);
|
||||
|
||||
public function getMessages();
|
||||
public function getMessageTemplates();
|
||||
|
||||
public function setMessages(array $messages);
|
||||
public function setMessageTemplates(array $templates);
|
||||
|
||||
public function setMessageTemplate($code, $templage);
|
||||
|
||||
public function getMessageTemplate($code);
|
||||
}
|
|
@ -5,10 +5,9 @@ namespace Respect\Validation\Rules;
|
|||
class SfTest extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
|
||||
|
||||
public function testParamsOk()
|
||||
{
|
||||
$v = new Sf('minLength', array('limit'=>3));
|
||||
$v = new Sf('minLength', array('limit' => 3));
|
||||
$this->assertTrue($v->assert('wp2oiur'));
|
||||
}
|
||||
|
||||
|
@ -17,7 +16,7 @@ class SfTest extends \PHPUnit_Framework_TestCase
|
|||
*/
|
||||
public function testParamsNot()
|
||||
{
|
||||
$v = new Sf('minLength', array('limit'=>3));
|
||||
$v = new Sf('minLength', array('limit' => 3));
|
||||
$this->assertTrue($v->assert('a'));
|
||||
}
|
||||
|
||||
|
|
|
@ -31,18 +31,19 @@ abstract class ValidatorTestCase extends \PHPUnit_Framework_TestCase
|
|||
$validator->shouldReceive('validate')->andReturn(true);
|
||||
$validator->shouldReceive('assert')->andReturn(true);
|
||||
}
|
||||
$validator->shouldReceive('getMessages')->andReturn(
|
||||
$validator->shouldReceive('getMessageTemplates')->andReturn(
|
||||
$messages
|
||||
);
|
||||
$className = 'Respect\Validation\Rules\\' . $name;
|
||||
if (!class_exists($className, false)) {
|
||||
eval("
|
||||
namespace Respect\Validation\Rules;
|
||||
class $name implements \Respect\Validation\Validatable {
|
||||
class $name
|
||||
extends \Respect\Validation\Rules\AbstractRule
|
||||
implements \Respect\Validation\Validatable {
|
||||
public function assert(\$input) {}
|
||||
public function validate(\$input) {}
|
||||
public function setMessages(array \$messages) {}
|
||||
public function getMessages() {
|
||||
public function getMessageTemplates() {
|
||||
return " . var_export($messages,
|
||||
true) . ";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue