File Coverage

lib/Date/Holidays/Adapter/RU.pm
Criterion Covered Total %
statement 18 26 69.2
branch 1 4 25.0
condition n/a
subroutine 5 6 83.3
pod 2 2 100.0
total 26 38 68.4


line stmt bran cond sub pod time code
1              
2             use strict;
3 1     1   408 use warnings;
  1         2  
  1         27  
4 1     1   5 use vars qw($VERSION);
  1         2  
  1         24  
5 1     1   4  
  1         2  
  1         34  
6             use base 'Date::Holidays::Adapter';
7 1     1   5  
  1         1  
  1         236  
8             $VERSION = '1.33';
9              
10             my ($self, %params) = @_;
11              
12 0     0 1 0 my $sub = $self->{_adaptee}->can('holidays');
13              
14 0         0 if ($sub) {
15             return &{$sub}($params{'year'});
16 0 0       0 } else {
17 0         0 return {};
  0         0  
18             }
19 0         0 }
20              
21             my ($self, %params) = @_;
22              
23             my $sub = $self->{_adaptee}->can('is_holiday');
24 1     1 1 3  
25             my $holiday;
26 1         5  
27             if ($sub) {
28 1         4 $holiday = &{$sub}($params{'year'}, $params{'month'}, $params{'day'});
29             } else {
30 1 50       6 $holiday = '';
31 1         2 }
  1         3  
32              
33 0           return $holiday;
34             }
35              
36 0           1;
37              
38              
39             =pod
40              
41             =encoding UTF-8
42              
43             =head1 NAME
44              
45             Date::Holidays::Adapter::RU - an adapter class for Date::Holidays::RU
46              
47             =head1 VERSION
48              
49             This POD describes version 1.33 of Date::Holidays::Adapter::RU
50              
51             =head1 DESCRIPTION
52              
53             The is the adapter class for L<Date::Holidays::RU>.
54              
55             =head1 SUBROUTINES/METHODS
56              
57             =head2 new
58              
59             The constructor, takes a single named argument, B<countrycode>
60              
61             =head2 is_holiday
62              
63             The B<holidays> method, takes 3 named arguments, B<year>, B<month> and B<day>
64              
65             Returns an indication of whether the day is a holiday in the calendar of the
66             country referenced by B<countrycode> in the call to the constructor B<new>.
67              
68             =head2 holidays
69              
70             The B<holidays> method, takes a single named argument, B<year>
71              
72             Returns a reference to a hash holding the calendar of the country referenced by
73             B<countrycode> in the call to the constructor B<new>.
74              
75             The calendar will spand for a year and the keys consist of B<month> and B<day>
76             concatenated.
77              
78             =head1 DIAGNOSTICS
79              
80             Please refer to DIAGNOSTICS in L<Date::Holidays>
81              
82             =head1 DEPENDENCIES
83              
84             =over
85              
86             =item * L<Date::Holidays::RU>
87              
88             =item * L<Date::Holidays::Adapter>
89              
90             =back
91              
92             =head1 INCOMPATIBILITIES
93              
94             Please refer to INCOMPATIBILITIES in L<Date::Holidays>
95              
96             =head1 BUGS AND LIMITATIONS
97              
98             Please refer to BUGS AND LIMITATIONS in L<Date::Holidays>
99              
100             =head1 BUG REPORTING
101              
102             Please refer to BUG REPORTING in L<Date::Holidays>
103              
104             =head1 AUTHOR
105              
106             Jonas Brømsø, (jonasbn) - C<< <jonasbn@cpan.org> >>
107              
108             =head1 LICENSE AND COPYRIGHT
109              
110             L<Date::Holidays> and related modules are (C) by Jonas Brømsø, (jonasbn)
111             2004-2022
112              
113             Date-Holidays and related modules are released under the Artistic License 2.0
114              
115             =cut