mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-18 23:43:19 +08:00
Fixes #1003: DateValidator returned true for invalid dates
This commit is contained in:
@@ -70,6 +70,8 @@ class DateValidator extends Validator
|
|||||||
*/
|
*/
|
||||||
public function validateValue($value)
|
public function validateValue($value)
|
||||||
{
|
{
|
||||||
return DateTime::createFromFormat($this->format, $value) !== false;
|
DateTime::createFromFormat($this->format, $value);
|
||||||
|
$errors = DateTime::getLastErrors();
|
||||||
|
return $errors['error_count'] === 0 && $errors['warning_count'] === 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ class DateValidatorTest extends TestCase
|
|||||||
public function testValidateValue()
|
public function testValidateValue()
|
||||||
{
|
{
|
||||||
$val = new DateValidator;
|
$val = new DateValidator;
|
||||||
|
$this->assertFalse($val->validateValue('3232-32-32'));
|
||||||
$this->assertTrue($val->validateValue('2013-09-13'));
|
$this->assertTrue($val->validateValue('2013-09-13'));
|
||||||
$this->assertFalse($val->validateValue('31.7.2013'));
|
$this->assertFalse($val->validateValue('31.7.2013'));
|
||||||
$this->assertFalse($val->validateValue('31-7-2013'));
|
$this->assertFalse($val->validateValue('31-7-2013'));
|
||||||
|
|||||||
Reference in New Issue
Block a user