Skip to content

Commit

Permalink
Merge pull request #826 from basico/patch-2
Browse files Browse the repository at this point in the history
fix: following doc conventions on dates
  • Loading branch information
nateabele committed Feb 12, 2013
2 parents ba19920 + a989ced commit 813ba20
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 3 deletions.
30 changes: 30 additions & 0 deletions tests/cases/util/ValidatorTest.php
Expand Up @@ -967,6 +967,36 @@ public function testCreditCardValidation() {
$this->assertFalse(Validator::isLuhn(true));
}

public function testDateValidation() {
$this->assertTrue(Validator::isDate('31-12-2012', 'dmy'));
$this->assertTrue(Validator::isDate('1 1 1999', 'dmy'));
$this->assertTrue(Validator::isDate('12/31/2012', 'mdy'));
$this->assertTrue(Validator::isDate('02.29.2000', 'mdy'));
$this->assertTrue(Validator::isDate('2012/12/31', 'ymd'));
$this->assertTrue(Validator::isDate('1999-1-01', 'ymd'));
$this->assertTrue(Validator::isDate('31 Dec 2012', 'dMy'));
$this->assertTrue(Validator::isDate('1 January 1999', 'dMy'));
$this->assertTrue(Validator::isDate('Dec 31 2012', 'Mdy'));
$this->assertTrue(Validator::isDate('January 1, 1999', 'Mdy'));
$this->assertTrue(Validator::isDate('December 2012', 'My'));
$this->assertTrue(Validator::isDate('Jan 1999', 'My'));
$this->assertTrue(Validator::isDate('12/2012', 'my'));
$this->assertTrue(Validator::isDate('1 2012', 'my'));

$this->assertFalse(Validator::isDate('32-12-2012', 'dmy'));
$this->assertFalse(Validator::isDate('29 2 1999', 'dmy'));
$this->assertFalse(Validator::isDate('13/31/2012', 'mdy'));
$this->assertFalse(Validator::isDate('1.0.1999', 'mdy'));
$this->assertFalse(Validator::isDate('2012/11/31', 'ymd'));
$this->assertFalse(Validator::isDate('2012/11/0', 'ymd'));
$this->assertFalse(Validator::isDate('31 Dic 2012', 'dMy'));
$this->assertFalse(Validator::isDate('1.January.1999', 'dMy'));
$this->assertFalse(Validator::isDate('Dec-31-2012', 'Mdy'));
$this->assertFalse(Validator::isDate('December/2012', 'My'));
$this->assertFalse(Validator::isDate('Jan.1999', 'My'));
$this->assertFalse(Validator::isDate('13 2012', 'my'));
}

public function testCheckHasErrors() {
$rules = array('title' => array('please enter a title'));
$result = Validator::check(array(), $rules);
Expand Down
5 changes: 2 additions & 3 deletions util/Validator.php
Expand Up @@ -234,10 +234,9 @@ public static function __init() {
'((1[6-9]|[2-9]\\d)(0[48]|[2468][048]|[13579][26])|((16|[2468]' .
'[048]|[3579][26])00)))))))\\,?\\ ((1[6-9]|[2-9]\\d)\\d{2}))$/',
'My' => '%^(Jan(uary)?|Feb(ruary)?|Ma(r(ch)?|y)|Apr(il)?|Ju((ly?)|(ne?))|' .
'Aug(ust)?|Oct(ober)?|(Sep(?=\\b|t)t?|Nov|Dec)(ember)?)[ /]((1[6-9]' .
'Aug(ust)?|Oct(ober)?|(Sep(?=\\b|t)t?|Nov|Dec)(ember)?)\\ ((1[6-9]' .
'|[2-9]\\d)\\d{2})$%',
'my' => '%^(((0[123456789]|10|11|12)([- /.])(([1][9][0-9][0-9])|([2][0-9]' .
'[0-9][0-9]))))$%'
'my' => '%^(0?[1-9]|1[012])([- /.])((1[6-9])|([2-9]\\d)\\d{2})$%'
),
'ip' => function($value, $format = null, array $options = array()) {
$options += array('flags' => array());
Expand Down

0 comments on commit 813ba20

Please sign in to comment.