1 |
#!/usr/bin/perl |
#!/usr/bin/perl |
2 |
|
|
3 |
use Test::Simple tests => 10; |
use Test::Simple tests => 14; |
4 |
|
|
5 |
use Time::Available qw(:days :fmt_interval); |
use Time::Available qw(:days :fmt_interval); |
6 |
|
use Time::Local; |
7 |
|
|
8 |
my $i = Time::Available->new( start=>'07', end=>'17:15', dayMask=>DAY_WEEKDAY, DEBUG=>1 ); |
my $tz_offset = time()-timegm(localtime); |
9 |
|
|
10 |
|
my $i = Time::Available->new( start=>'07', end=>'17:15', dayMask=>DAY_WEEKDAY); |
11 |
ok( defined($i) , 'new() work'); |
ok( defined($i) , 'new() work'); |
12 |
|
|
13 |
ok( defined($i->{start}) && $i->{start} == 7*60*60, 'start time ok' ); |
ok( defined($i->{start_arr}) && |
14 |
ok( defined($i->{end}) && $i->{end} == ((17*60)+15)*60, 'end time ok' ); |
$i->{start_arr}[0] == 0 && |
15 |
|
$i->{start_arr}[1] == 0 && |
16 |
|
$i->{start_arr}[2] == 7, |
17 |
|
'start time ok' ); |
18 |
|
ok( defined($i->{end_arr}) && |
19 |
|
$i->{end_arr}[0] == 0 && |
20 |
|
$i->{end_arr}[1] == 15 && |
21 |
|
$i->{end_arr}[2] == 17, |
22 |
|
'end time ok' ); |
23 |
|
|
24 |
my $t = 1 * 24; # 1d |
my $t = 1 * 24; # 1d |
25 |
$t += 11; # 11 hr |
$t += 11; # 11 hr |
42 |
ok($i->uptime(50000)==8500,'ok'); |
ok($i->uptime(50000)==8500,'ok'); |
43 |
ok($i->uptime(60000)==0,'ok'); |
ok($i->uptime(60000)==0,'ok'); |
44 |
|
|
|
undef $i; |
|
|
|
|
45 |
# create and test timespan which spans over midnight |
# create and test timespan which spans over midnight |
46 |
|
|
47 |
$i = Time::Available->new( start=>'17:15', end=>'07:00', dayMask=>DAY_TUESDAY); |
$i = Time::Available->new( start=>'17:15', end=>'07:00', dayMask=>DAY_THURSDAY); |
48 |
ok( defined($i->{start}) && $i->{start} == ((17*60)+15)*60, 'end time ok' ); |
ok( defined($i->{start_arr}) && |
49 |
ok( defined($i->{end}) && $i->{end} == 7*60*60, 'start time ok' ); |
$i->{start_arr}[0] == 0 && |
50 |
|
$i->{start_arr}[1] == 15 && |
51 |
$t=time();print STDERR " uptime ( $t ",$i->uptime($t)," ) ",scalar localtime $t,": ",fmt_interval($i->uptime($t))," (",$i->uptime($t),")\n"; |
$i->{start_arr}[2] == 17, |
52 |
$t=20000; print STDERR " uptime ( $t ",$i->uptime($t)," ) ",scalar localtime $t,": ",fmt_interval($i->uptime($t))," (",$i->uptime($t),")\n"; |
'end time ok' ); |
53 |
$t=30000; print STDERR " uptime ( $t ",$i->uptime($t)," ) ",scalar localtime $t,": ",fmt_interval($i->uptime($t))," (",$i->uptime($t),")\n"; |
ok( defined($i->{end_arr}) && |
54 |
$t=50000; print STDERR " uptime ( $t ",$i->uptime($t)," ) ",scalar localtime $t,": ",fmt_interval($i->uptime($t))," (",$i->uptime($t),")\n"; |
$i->{end_arr}[0] == 0 && |
55 |
$t=60000; print STDERR " uptime ( $t ",$i->uptime($t)," ) ",scalar localtime $t,": ",fmt_interval($i->uptime($t))," (",$i->uptime($t),")\n"; |
$i->{end_arr}[1] == 0 && |
56 |
|
$i->{end_arr}[2] == 7, |
57 |
|
'start time ok' ); |
58 |
|
|
59 |
|
ok($i->uptime(20000)==29500,'ok'); |
60 |
|
ok($i->uptime(30000)==27900,'ok'); |
61 |
|
ok($i->uptime(50000)==27900,'ok'); |
62 |
|
ok($i->uptime(60000)==26400,'ok'); |
63 |
|
|