Ejemplo n.º 1
0
 public function testRecurr()
 {
     $tests = array(array('2014-01-01', '1d', '2014-01-02'), array('2014-01-01', '1w', '2014-01-08'), array('2014-01-01', '1m', '2014-02-01'), array('2014-01-01', '1y', '2015-01-01'), array('2014-01-01', '2d', '2014-01-03'), array('2014-01-01', '2w', '2014-01-15'), array('2014-01-01', '2m', '2014-03-01'), array('2014-01-01', '2y', '2016-01-01'), array('2014-01-31', '1w', '2014-02-07'), array('2014-01-31', '1m', '2014-03-03'), array('2014-01-01', '+1d', (new DateTime())->modify('+1day')->format('Y-m-d')), array('2014-01-01', '+1w', (new DateTime())->modify('+1week')->format('Y-m-d')), array('2014-01-01', '+1m', (new DateTime())->modify('+1month')->format('Y-m-d')), array('2014-01-01', '+1y', (new DateTime())->modify('+1year')->format('Y-m-d')), array('2014-01-03', '1b', '2014-01-06'), array('2014-01-03', '2b', '2014-01-06'), array('2014-01-03', '3b', '2014-01-06'), array('2014-01-03', '4b', '2014-01-07'), array('2014-01-04', '1wb', '2014-01-13'), array('2014-01-01', '1mb', '2014-02-03'), array('2014-01-03', '1yb', '2015-01-05'));
     foreach ($tests as $test) {
         $in = $test[0];
         $interval = $test[1];
         $out = $test[2];
         $ts = new DateTime($in);
         $r = new Recurrent($interval);
         $this->assertEquals($r->recurr($ts)->format('Y-m-d'), $out);
     }
 }