Blame | Letzte Änderung | Log anzeigen | RSS feed
--TEST--testdate.phpt: Unit tests for 'Validate.php'--FILE--<?php// $Id: testdate.phpt 236794 2007-06-01 07:44:55Z amir $require_once 'Validate.php';// Validate test script$noYes = array('NO', 'YES');require_once 'Date.php';echo "Test Validate_Date\n";echo "******************\n";$dates = array(array('121202', 'format'=>'%d%m%y'), // OKarray('21202', 'format'=>'%d%m%y'), // NOKarray('02122', 'format'=>'%y%m%d'), // NOKarray('02229', 'format'=>'%y%d%m'), // NOKarray('121402', 'format'=>'%d%m%y'), // NOKarray('12120001', 'format'=>'%d%m%Y'), // OK/* Ambiguous date >> false* They should be still valid. Maybe by changing the loop* 1st check for the Y (4digits), and then m (2digits)* if you got the idea ;)*/array('220001', 'format'=>'%j%n%Y'), // NOKarray('2299', 'format'=>'%j%n%y'), // NOKarray('2120001', 'format'=>'%j%m%Y'), // NOK/* End */array('12121999', 'format'=>'%d%m%Y', 'min'=>array('01','01','1995')), // OKarray('12121996', 'format'=>'%d%m%Y', 'min'=>array('01','01','1995'),'max'=>array('01','01','1997')), // OKarray('29022002', 'format'=>'%d%m%Y'), // NOKarray('12.12.1902', 'format'=>'%d.%m.%Y'), // OKarray('12/12/1902', 'format'=>'%d/%m/%Y'), // OKarray('12/12/1902', 'format'=>'%d/%m/%Y'), // OKarray('12:12:1902', 'format'=>'%d:%m:%Y'), // OKarray('12', 'format'=>'%g'), // OKarray('12', 'format'=>'%G'), // OKarray('13:00', 'format'=>'%g:%i'), // NOKarray('24:59', 'format'=>'%G:%i'), // OKarray('25:00', 'format'=>'%G:%i'), // NOKarray('25:00', 'format'=>'%G:%i:%s'), // NOKarray('121902', 'format'=>'%m%Y'), // OKarray('13120001', 'format'=>'%d%m%Y') // OK);$dateObjects = array(array('11111996', 'format'=>'%d%m%Y', 'min' => new Date('19950101')), // OKarray('12121996', 'format'=>'%d%m%Y', 'min' => new Date('19970101')), // NOKarray('10101994', 'format'=>'%d%m%Y', 'max' => new Date('2005-04-27 06:24:05')), // OKarray('11111994', 'format'=>'%d%m%Y', 'max' => new Date('19920101')), // NOKarray('12121996', 'format'=>'%d%m%Y','min' => new Date('19950101'), 'max' => new Date('2005-04-27 06:24:05')) // OK);echo "\nTest dates\n";foreach ($dates as $data){$date = array_shift($data);echo "{$date} (";foreach ($data as $key=>$val) {if (is_array($val)) {echo "{$key}=>[ ";foreach($val as $elt) {echo "{$elt} ";}echo "] ";} else {echo "{$key}=>{$val} ";}}echo "): ".$noYes[Validate::date($date, $data)]."\n";}echo "\nTest dates with min max object\n";foreach ($dateObjects as $data){$date = array_shift($data);echo "{$date} (";foreach ($data as $key=>$val) {if (($key == 'min') or ($key == 'max')) {echo "{$key}=>".$val->getDate()." ";} else {echo "{$key}=>{$val} ";}}echo "): ".$noYes[Validate::date($date, $data)]."\n";}?>--EXPECT--Test Validate_Date******************Test dates121202 (format=>%d%m%y ): YES21202 (format=>%d%m%y ): NO02122 (format=>%y%m%d ): NO02229 (format=>%y%d%m ): NO121402 (format=>%d%m%y ): NO12120001 (format=>%d%m%Y ): YES220001 (format=>%j%n%Y ): NO2299 (format=>%j%n%y ): NO2120001 (format=>%j%m%Y ): NO12121999 (format=>%d%m%Y min=>[ 01 01 1995 ] ): YES12121996 (format=>%d%m%Y min=>[ 01 01 1995 ] max=>[ 01 01 1997 ] ): YES29022002 (format=>%d%m%Y ): NO12.12.1902 (format=>%d.%m.%Y ): YES12/12/1902 (format=>%d/%m/%Y ): YES12/12/1902 (format=>%d/%m/%Y ): YES12:12:1902 (format=>%d:%m:%Y ): YES12 (format=>%g ): YES12 (format=>%G ): YES13:00 (format=>%g:%i ): NO24:59 (format=>%G:%i ): YES25:00 (format=>%G:%i ): NO25:00 (format=>%G:%i:%s ): NO121902 (format=>%m%Y ): YES13120001 (format=>%d%m%Y ): YESTest dates with min max object11111996 (format=>%d%m%Y min=>1995-01-01 00:00:00 ): YES12121996 (format=>%d%m%Y min=>1997-01-01 00:00:00 ): NO10101994 (format=>%d%m%Y max=>2005-04-27 06:24:05 ): YES11111994 (format=>%d%m%Y max=>1992-01-01 00:00:00 ): NO12121996 (format=>%d%m%Y min=>1995-01-01 00:00:00 max=>2005-04-27 06:24:05 ): YES