File Coverage

tests/util-3
Criterion Covered Total %
statement 41 41 100.0
branch n/a
condition n/a
subroutine 8 8 100.0
pod n/a
total 49 49 100.0


line stmt bran cond sub pod time code
1             #!/usr/bin/perl -w
2              
3             # The script tests Arch::Util time-system related functions.
4              
5 1     1   937 use FindBin;
  1         1278  
  1         50  
6 1     1   1017 use lib "$FindBin::Bin/../perllib";
  1         711  
  1         7  
7              
8             # pretend it is "2005-04-18 17:53:20 GMT" now
9 1     18   9 *Arch::Util::time = sub () { return 1113836000; };
  18         61  
10 1         3 *Arch::Util::time = *Arch::Util::time;
11              
12 1     1   1415 use Test::More tests => 21;
  1         22652  
  1         10  
13 1     1   8 use_ok("Arch::Util", "date2daysago", "date2age");
  1         965  
  1         3  
  1         3  
  1         84  
14              
15 6     6   32 sub daysago ($) { scalar date2daysago(shift() . " GMT") }
16 1     1   13 sub listago ($) { date2daysago(shift() . " GMT") }
17 11     11   53 sub age ($) { date2age(shift() . " GMT") }
18              
19 1         1271 is(daysago("2005-04-18 00:00:00"), 0, "date2daysago today 00:00");
20 1         866 is(daysago("2005-04-18 23:59:59"), 0, "date2daysago today 23:59");
21 1         625 is(daysago("2005-04-19 00:00:00"), 0, "date2daysago tomorrow 00:00");
22 1         505 is(daysago("2005-04-19 23:59:59"), -1, "date2daysago tomorrow 23:59");
23 1         832 is(daysago("2005-04-17 00:00:00"), 1, "date2daysago yesterday 00:00");
24 1         500 is(daysago("2005-04-17 23:59:59"), 0, "date2daysago yesterday 23:59");
25              
26 1         615 my ($days, $time, $tz) = listago("2005-01-01 12:00:00");
27 1         5 is($days, 107, "date2daysago days 2005-01-01 12:00:00");
28 1         1137 is($time, 1104580800, "date2daysago time 2005-01-01 12:00:00");
29 1         569 is($tz, "GMT", "date2daysago tz 2005-01-01 12:00:00");
30              
31 1         600 is(age("2006-01-01 12:00:00"), "-8 months", "date2age 2006-01-01 12:00:00");
32 1         1795 is(age("2005-01-01 12:00:00"), "4 months", "date2age 2005-01-01 12:00:00");
33 1         615 is(age("2004-01-01 12:00:00"), "16 months", "date2age 2004-01-01 12:00:00");
34 1         1647 is(age("2003-01-01 12:00:00"), "2 years", "date2age 2003-01-01 12:00:00");
35 1         563 is(age("2002-01-01 12:00:00"), "3 years", "date2age 2002-01-01 12:00:00");
36 1         2751 is(age("2005-05-01 12:00:00"), "-12 days", "date2age 2005-05-01 12:00:00");
37 1         931 is(age("2005-04-01 12:00:00"), "17 days", "date2age 2005-04-01 12:00:00");
38 1         490 is(age("2005-04-19 12:00:00"), "0 days", "date2age 2005-04-19 12:00:00");
39 1         455 is(age("2005-04-18 12:00:00"), "0 days", "date2age 2005-04-18 12:00:00");
40 1         451 is(age("2005-04-17 12:00:00"), "1 day", "date2age 2005-04-17 12:00:00");
41 1         518 is(age("2005-04-10 12:00:00"), "8 days", "date2age 2005-04-10 12:00:00");