Blame t/recur.dates.2.t

Packit 95306a
#!/usr/bin/perl -w
Packit 95306a
Packit 95306a
use Test::Inter;
Packit 95306a
$t = new Test::Inter 'recur :: full recur';
Packit 95306a
$testdir = '';
Packit 95306a
$testdir = $t->testdir();
Packit 95306a
Packit 95306a
use Date::Manip;
Packit 95306a
if (DateManipVersion() >= 6.00) {
Packit 95306a
   $t->feature("DM6",1);
Packit 95306a
}
Packit 95306a
Packit 95306a
$t->skip_all('Date::Manip 6.xx required','DM6');
Packit 95306a
Packit 95306a
Packit 95306a
sub test {
Packit 95306a
  ($recur,$arg1,$arg2) = @_;
Packit 95306a
  $err = $obj->parse($recur);
Packit 95306a
  if ($err) {
Packit 95306a
     return $obj->err();
Packit 95306a
  } else {
Packit 95306a
     $start = undef;
Packit 95306a
     $end   = undef;
Packit 95306a
     if (defined($arg1)) {
Packit 95306a
        $start = $obj->new_date();
Packit 95306a
        $start->parse($arg1);
Packit 95306a
     }
Packit 95306a
     if (defined($arg2)) {
Packit 95306a
        $end = $obj->new_date();
Packit 95306a
        $end->parse($arg2);
Packit 95306a
     }
Packit 95306a
     @dates = $obj->dates($start,$end);
Packit 95306a
     @ret   = ();
Packit 95306a
     foreach my $d (@dates) {
Packit 95306a
        $v = $d->value();
Packit 95306a
        push(@ret,$v);
Packit 95306a
     }
Packit 95306a
     return @ret;
Packit 95306a
  }
Packit 95306a
}
Packit 95306a
Packit 95306a
$obj = new Date::Manip::Recur;
Packit 95306a
$obj->config("forcedate","2000-01-21-00:00:00,America/New_York");
Packit 95306a
Packit 95306a
$tests="
Packit 95306a
Packit 95306a
1:2:3:4*12:30:00**2000010500:00:00*2000010100:00:00*2003010100:00:00
Packit 95306a
   =>
Packit 95306a
   2000010512:30:00
Packit 95306a
   2001033012:30:00
Packit 95306a
   2002062412:30:00
Packit 95306a
Packit 95306a
1:2:3:4*12:30:00**2000010500:00:00*2000010100:00:00*2003010100:00:00
Packit 95306a
2001010100:00:00
Packit 95306a
   =>
Packit 95306a
   2001033012:30:00
Packit 95306a
   2002062412:30:00
Packit 95306a
Packit 95306a
1:2:3:4*12:30:00**2000010500:00:00*2000010100:00:00*2003010100:00:00
Packit 95306a
__undef__
Packit 95306a
2001123100:00:00
Packit 95306a
   =>
Packit 95306a
   2000010512:30:00
Packit 95306a
   2001033012:30:00
Packit 95306a
Packit 95306a
1:2:3:4*12:30:00**2000010500:00:00*2000010100:00:00*2003010100:00:00
Packit 95306a
2001010100:00:00
Packit 95306a
2001123100:00:00
Packit 95306a
   =>
Packit 95306a
   2001033012:30:00
Packit 95306a
Packit 95306a
1:2:3:4*12:30:00**2000010500:00:00
Packit 95306a
2000010100:00:00
Packit 95306a
2003010100:00:00
Packit 95306a
   =>
Packit 95306a
   2000010512:30:00
Packit 95306a
   2001033012:30:00
Packit 95306a
   2002062412:30:00
Packit 95306a
Packit 95306a
### Test new years definition
Packit 95306a
Packit 95306a
1*1:0:1:0:0:0*dwd**1999060100:00:00*2006060100:00:00
Packit 95306a
   =>
Packit 95306a
   1999123100:00:00
Packit 95306a
   2001010100:00:00
Packit 95306a
   2002010100:00:00
Packit 95306a
   2003010100:00:00
Packit 95306a
   2004010100:00:00
Packit 95306a
   2004123100:00:00
Packit 95306a
   2006010200:00:00
Packit 95306a
Packit 95306a
# Test recur with no frequency
Packit 95306a
Packit 95306a
*2013:1:0:20:10:11:12***2013010100:00:00*2013013012:00:00
Packit 95306a
   =>
Packit 95306a
   2013012010:11:12
Packit 95306a
Packit 95306a
*2013:1:0:20:10:11:12***2013012100:00:00*2013013012:00:00
Packit 95306a
   =>
Packit 95306a
Packit 95306a
# Test overriding dates with no frequency
Packit 95306a
Packit 95306a
*1990-1995:12:0:1:0:0:0
Packit 95306a
   =>
Packit 95306a
   1990120100:00:00
Packit 95306a
   1991120100:00:00
Packit 95306a
   1992120100:00:00
Packit 95306a
   1993120100:00:00
Packit 95306a
   1994120100:00:00
Packit 95306a
   1995120100:00:00
Packit 95306a
Packit 95306a
*1990-1995:12:0:1:0:0:0
Packit 95306a
1992-01-01
Packit 95306a
1994-12-31
Packit 95306a
   =>
Packit 95306a
   1992120100:00:00
Packit 95306a
   1993120100:00:00
Packit 95306a
   1994120100:00:00
Packit 95306a
Packit 95306a
";
Packit 95306a
Packit 95306a
$t->tests(func  => \&test,
Packit 95306a
          tests => $tests);
Packit 95306a
$t->done_testing();
Packit 95306a
Packit 95306a
#Local Variables:
Packit 95306a
#mode: cperl
Packit 95306a
#indent-tabs-mode: nil
Packit 95306a
#cperl-indent-level: 3
Packit 95306a
#cperl-continued-statement-offset: 2
Packit 95306a
#cperl-continued-brace-offset: 0
Packit 95306a
#cperl-brace-offset: 0
Packit 95306a
#cperl-brace-imaginary-offset: 0
Packit 95306a
#cperl-label-offset: 0
Packit 95306a
#End: