File Coverage

blib/lib/Date/Vruceleto.pm
Criterion Covered Total %
statement 20 20 100.0
branch 3 4 75.0
condition 2 2 100.0
subroutine 6 6 100.0
pod 0 2 0.0
total 31 34 91.1


line stmt bran cond sub pod time code
1             package Date::Vruceleto;
2              
3             #use 5.010001;
4 2     2   127495 use strict;
  2         11  
  2         48  
5 2     2   8 use warnings;
  2         2  
  2         49  
6 2     2   1000 use utf8;
  2         23  
  2         8  
7              
8             require Exporter;
9              
10             our @ISA = qw(Exporter);
11              
12             our @EXPORT_OK = qw(vruceleto solarcycle vrutseleto);
13              
14             our @EXPORT = qw();
15              
16             our $VERSION = '0.01';
17              
18             my %map = (
19             1 => 'А',
20             2 => 'В',
21             3 => 'Г',
22             4 => 'Д',
23             5 => 'Е',
24             6 => 'Ѕ', # Cyrillic capital letter DZE
25             7 => 'З'
26             );
27              
28             sub solarcycle {
29 10     10 0 81 my ($year, $is_AD) = @_;
30 10 100       20 $year = $year-8 if $is_AD;
31 10   100     27 my $res = $year % 28 || 28;
32 10         23 return $res;
33             }
34              
35             sub vruceleto {
36 6     6 0 75 my $q = solarcycle(@_);
37 2     2   1365 use integer;
  2         23  
  2         7  
38 6         11 my $res = $q/4 + $q%7;
39 6 50       10 $res = $res-7 if $res > 7;
40 6         25 return $map{$res};
41             }
42              
43             *vrutseleto = \&vruceleto;
44              
45             1;
46             __END__