1#!/usr/bin/perl 2 3use warnings; 4use strict; 5use Test::Inter; 6$::ti = new Test::Inter $0; 7require "tests.pl"; 8 9our $obj1 = new Date::Manip::Date; 10$obj1->config("forcedate","now,America/New_York"); 11our $obj2 = $obj1->new_date(); 12 13sub test { 14 my(@test)=@_; 15 16 my $err = $obj1->parse(shift(@test)); 17 return $$obj1{"err"} if ($err); 18 $err = $obj2->parse(shift(@test)); 19 return $$obj2{"err"} if ($err); 20 push(@test,"bapprox"); 21 22 my $obj3 = $obj1->calc($obj2,@test); 23 return if (! defined $obj3); 24 my $ret = $obj3->value(); 25 return $ret; 26} 27 28my $tests=" 29 30'Jan 1 1999' 'Jun 4 1999' => 0:5:0:3:0:0:0 31 32'Jan 1 1999' 'Jun 4 1999' 1 => 0:-5:0:3:0:0:0 33 34'Jan 1 1999' 'Jun 4 1999' 2 => 0:-5:0:1:0:0:0 35 36'Jun 4 1999' 'Jan 1 1999' => 0:-5:0:1:0:0:0 37 38'Jan 3 1998' 'Jun 8 1999' => 1:5:0:3:0:0:0 39 40'Wed Jan 10 1996 noon' 'Wed Feb 7 1996 noon' => 0:1:0:-2:5:0:0 41 42'Wed Jan 10 1996 noon' 'Wed Jan 7 1998 noon' => 2:0:0:-2:5:0:0 43 44'Wed Jan 7 1998 noon' 'Wed Jan 10 1996 noon' => -2:0:0:+2:4:0:0 45 46'Wed Jan 10 1996 noon' 'Wed Jan 8 1997 noon' => 1:0:0:-2:0:0:0 47 48'Wed Jan 8 1997 noon' 'Wed Jan 10 1996 noon' => -1:0:0:+2:0:0:0 49 50'Wed May 8 1996 noon' 'Wed Apr 9 1997 noon' => 0:11:0:1:0:0:0 51 52'Wed Apr 9 1997 noon' 'Wed May 8 1996 noon' => 0:-11:0:1:0:0:0 53 54'Wed Apr 10 1996 noon' 'Wed May 14 1997 noon' => 1:1:0:2:4:0:0 55 56'Wed May 14 1997 noon' 'Wed Apr 10 1996 noon' => -1:1:0:2:5:0:0 57 58'Mon Jan 8 1996 noon' 'Fri Feb 9 1996 noon' => 0:1:0:1:0:0:0 59 60'Fri Feb 9 1996 noon' 'Mon Jan 8 1996 noon' => 0:-1:0:1:0:0:0 61 62'Tue Jan 9 1996 12:00:00' 'Fri Jan 10 1997 10:30:30' => 1:0:0:0:7:30:30 63 64'Fri Jan 10 1997 10:30:30' 'Tue Jan 9 1996 12:00:00' => -1:0:0:0:7:30:30 65 662012-01-10-12:00:00 2012-01-25-12:00:00 => 0:0:2:1:0:0:0 67 682012-01-10-12:00:00 2012-01-25-13:00:00 => 0:0:2:1:1:0:0 69 702012-01-10-12:00:00 2012-01-25-11:00:00 => 0:0:2:0:8:0:0 71 72"; 73 74$::ti->tests(func => \&test, 75 tests => $tests); 76$::ti->done_testing(); 77 78#Local Variables: 79#mode: cperl 80#indent-tabs-mode: nil 81#cperl-indent-level: 3 82#cperl-continued-statement-offset: 2 83#cperl-continued-brace-offset: 0 84#cperl-brace-offset: 0 85#cperl-brace-imaginary-offset: 0 86#cperl-label-offset: 0 87#End: 88