# Before `make install' is performed this script should be runnable with
# `make test'. After `make install' it should work as `perl test.pl'
#########################
# change 'tests => 1' to 'tests => last_test_to_print';
use Test;
BEGIN { plan tests => 12 };
use Time::Interval;
ok(1); # If we made it this far, we're ok.
#########################
#test getInterval
my $str1 = "1/15/03 12:34:32 EDT 2003";
my $str2 = "4/25/03 11:24:00 EDT 2003";
print "testing getInterval between:\n\t$str1\n\t$str2\n";
if (my $data = getInterval($str1,$str2)){
foreach (keys %{$data}){ print "[$_]: $data->{$_}\n"; }
ok(1);
}else{
ok(0);
}
#test convertInterval
my %data = (
'days' => 70,
'hours' => 16,
'minutes' => 56,
'seconds' => 18
);
print "testing convertInterval on:\n";
foreach (keys %data){ print "[$_]: $data{$_}\n"; }
foreach ('days','hours','minutes','seconds'){
my $num = convertInterval(
ConvertTo => $_,
%data
) || ok(0);
print "converting to $_ ...: $num\n";
ok(1);
}
#test parseInterval
print "testing parseInterval (data):\n";
foreach ('days','hours','minutes','seconds'){
print "12345 $_ is: ...\n";
my $string = parseInterval(
$_ => 12345,
String => 1
) || ok(0);
print "\t$string\n";
ok(1);
}
#test parseInterval
print "testing parseInterval w/abbreviated string (data):\n";
foreach ('days','hours','minutes','seconds'){
print "12345 $_ is: ...\n";
my $string = parseInterval(
$_ => 12345,
Small => 1
) || ok(0);
print "\t$string\n";
ok(1);
}
#test coalesce
print "testing coalesce on: \n";
my @date_ranges = (
# [ "5/13/04 10:00:00 EDT", "5/13/04 11:00:00 EDT" ],
# [ "5/13/04 13:00:00 EDT", "5/13/04 14:00:00 EDT" ],
# [ "5/13/04 10:50:00 EDT", "5/13/04 12:00:00 EDT" ],
# [ "5/10/04 10:50:00 EDT", "5/11/04 12:00:00 EDT" ],
# [ "5/13/04 9:50:00 EDT", "5/13/04 11:00:00 EDT" ],
[ "20040429 11:34:16", "20040430 02:19:30" ],
[ "20040429 11:34:16", "20040501 02:19:31" ],
[ "20040429 11:34:16", "20040502 02:19:31" ],
[ "20040429 11:34:16", "20040503 02:19:31" ],
[ "20040429 11:34:16", "20040504 02:19:31" ],
[ "20040429 11:34:16", "20040504 14:04:58" ]
);
foreach (@date_ranges){ print $_->[0], " - ", $_->[1], "\n"; }
$tmp = coalesce(\@date_ranges);
print "coalesced dates:\n";
foreach (@{$tmp}){
print $_->[0], " - ", $_->[1], "\n";
}
ok(1);