File: m010.t

package info (click to toggle)
libdate-pcalc-perl 6.1-4
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, stretch
  • size: 1,856 kB
  • ctags: 619
  • sloc: perl: 16,706; ansic: 3,083; sh: 14; makefile: 4
file content (104 lines) | stat: -rw-r--r-- 3,020 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#!perl -w

BEGIN { eval { require bytes; }; }
use strict;
no strict "vars";

eval { require Bit::Vector; };

if ($@)
{
    print "1..0\n";
    exit 0;
}

$Date::Pcalendar::Profiles::Profiles =
$Date::Pcalendar::Profiles::Profiles = 0; # Avoid "used only once" warning

require Date::Pcalc::Object;
require Date::Pcalendar::Profiles;
require Date::Pcalendar;

Date::Pcalc::Object->import(':all');

# ======================================================================
#   $cal = Date::Pcalendar->new(PROFILE[,LANG[,WEEKEND]]);
#   $cal->cache_add( YEAR [,YEAR]* );
#   $cal->cache_del( YEAR [,YEAR]* );
#   @list = $cal->cache_keys();
#   @dates = $cal->search(SUBSTRING);
#   @labels = $cal->labels(DATE);
#   @dates = $year->search(SUBSTRING);
#   @labels = $year->labels(DATE);
# ======================================================================

print "1..6\n";

$n = 1;

Date::Pcalc->date_format(3);

$cal = Date::Pcalendar->new( $Date::Pcalendar::Profiles::Profiles->{'DE-NW'}, Language(Decode_Language("Deutsch")) );

$cal->cache_add( 2000..2003,2005 );

@list = $cal->cache_keys();

if (join(',', @list) eq '2000,2001,2002,2003,2005')
{print "ok $n\n";} else {print "not ok $n\n";}
$n++;

$cal->cache_del( 2005 );

@list = $cal->cache_keys();

if (join(',', @list) eq '2000,2001,2002,2003')
{print "ok $n\n";} else {print "not ok $n\n";}
$n++;

@date = $cal->search("Weiber");

$string = join( '', map( sprintf( "%s (%s)\n", $_, join( ' ', sort $cal->labels($_->date()) ) ), @date ) );

if ($string eq <<'VERBATIM')
Donnerstag, den 2. Mrz 2000 (Donnerstag Fettdonnerstag Weiberfastnacht)
Donnerstag, den 22. Februar 2001 (Donnerstag Fettdonnerstag Weiberfastnacht)
Donnerstag, den 7. Februar 2002 (Donnerstag Fettdonnerstag Weiberfastnacht)
Donnerstag, den 27. Februar 2003 (Donnerstag Fettdonnerstag Weiberfastnacht)
VERBATIM
{print "ok $n\n";} else {print "not ok $n\n";}
$n++;

$check = join( '', map( sprintf( "%s (%s)\n", $_, join( ' ', sort $cal->year($_)->labels($_->date()) ) ), @date ) );

if ($check eq <<'VERBATIM')
Donnerstag, den 2. Mrz 2000 (Donnerstag Fettdonnerstag Weiberfastnacht)
Donnerstag, den 22. Februar 2001 (Donnerstag Fettdonnerstag Weiberfastnacht)
Donnerstag, den 7. Februar 2002 (Donnerstag Fettdonnerstag Weiberfastnacht)
Donnerstag, den 27. Februar 2003 (Donnerstag Fettdonnerstag Weiberfastnacht)
VERBATIM
{print "ok $n\n";} else {print "not ok $n\n";}
$n++;

$year = $cal->year( 2004 );

@date = $year->search("Weiber");

$string = join( '', map( sprintf( "%s (%s)\n", $_, join( ' ', sort $cal->labels($_) ) ), @date ) );

if ($string eq <<'VERBATIM')
Donnerstag, den 19. Februar 2004 (Donnerstag Fettdonnerstag Weiberfastnacht)
VERBATIM
{print "ok $n\n";} else {print "not ok $n\n";}
$n++;

$check = join( '', map( sprintf( "%s (%s)\n", $_, join( ' ', sort $year->labels($_) ) ), @date ) );

if ($check eq <<'VERBATIM')
Donnerstag, den 19. Februar 2004 (Donnerstag Fettdonnerstag Weiberfastnacht)
VERBATIM
{print "ok $n\n";} else {print "not ok $n\n";}
$n++;

__END__