/[Time-Available]/t/test.t
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /t/test.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (hide annotations)
Tue Dec 2 12:41:40 2003 UTC (20 years, 5 months ago) by dpavlin
Branch: MAIN
CVS Tags: HEAD
Changes since 1.9: +12 -1 lines
File MIME type: application/x-troff
fix intervals which start with 0 hours, and bug with sunday (it never
matched dayMask)

1 dpavlin 1.1 #!/usr/bin/perl
2    
3 dpavlin 1.10 use Test::Simple tests => 16;
4 dpavlin 1.1
5 dpavlin 1.3 use Time::Available qw(:days :fmt_interval);
6 dpavlin 1.9 use Time::Local;
7    
8     my $tz_offset = time()-timegm(localtime);
9 dpavlin 1.1
10 dpavlin 1.4 my $i = Time::Available->new( start=>'07', end=>'17:15', dayMask=>DAY_WEEKDAY);
11 dpavlin 1.1 ok( defined($i) , 'new() work');
12    
13 dpavlin 1.9 ok( defined($i->{start_arr}) &&
14     $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 dpavlin 1.1
24 dpavlin 1.2 my $t = 1 * 24; # 1d
25     $t += 11; # 11 hr
26     $t *= 60;
27     $t += 11; # 11 min
28     $t *= 60;
29     $t += 11; # 11 sec
30    
31 dpavlin 1.3 ok( fmt_interval($t) eq '1d 11:11:11', 'fmt_interval output ok');
32 dpavlin 1.2
33     # 20000 = Thu Jan 1 06:33:20 1970
34     # 30000 = Thu Jan 1 09:20:00 1970
35     # 50000 = Thu Jan 1 14:53:20 1970
36     # 60000 = Thu Jan 1 17:40:00 1970
37 dpavlin 1.3
38     # test this timespan (07:00-17:15) with above values
39    
40 dpavlin 1.9 ok($i->uptime(20000)==36900,'ok');
41     ok($i->uptime(30000)==28500,'ok');
42     ok($i->uptime(50000)==8500,'ok');
43     ok($i->uptime(60000)==0,'ok');
44 dpavlin 1.3
45     # create and test timespan which spans over midnight
46    
47 dpavlin 1.4 $i = Time::Available->new( start=>'17:15', end=>'07:00', dayMask=>DAY_THURSDAY);
48 dpavlin 1.9 ok( defined($i->{start_arr}) &&
49     $i->{start_arr}[0] == 0 &&
50     $i->{start_arr}[1] == 15 &&
51     $i->{start_arr}[2] == 17,
52     'end time ok' );
53     ok( defined($i->{end_arr}) &&
54     $i->{end_arr}[0] == 0 &&
55     $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 dpavlin 1.3
64 dpavlin 1.10 $i = Time::Available->new( start=>'00:00', end=>'23:59', dayMask=>DAY_SUNDAY, debug=>1);
65     ok($i->_dayOk(0) == 1, 'ok');
66     $i = Time::Available->new( start=>'00:00', end=>'23:59', dayMask=>DAY_MONDAY, debug=>1);
67     ok($i->_dayOk(1) == 1, 'ok');
68    
69     # DAY_MONDAY
70     # DAY_TUESDAY
71     # DAY_WEDNESDAY
72     # DAY_THURSDAY
73     # DAY_FRIDAY
74     # DAY_SATURDAY

  ViewVC Help
Powered by ViewVC 1.1.26