File Coverage

blib/lib/Finance/Tax/Aruba/Income/2021.pm
Criterion Covered Total %
statement 12 12 100.0
branch 4 4 100.0
condition n/a
subroutine 4 4 100.0
pod 1 1 100.0
total 21 21 100.0


line stmt bran cond sub pod time code
1             package Finance::Tax::Aruba::Income::2021;
2             our $VERSION = '0.009';
3 4     4   6414 use Moose;
  4         12  
  4         32  
4 4     4   29476 use namespace::autoclean;
  4         14  
  4         47  
5              
6             # ABSTRACT: Income tax calculator for the year 2021
7              
8             with qw(
9             Finance::Tax::Aruba::Role::Income::TaxYear
10             );
11              
12             has '+taxfree_max' => (
13             default => 28_861,
14             );
15              
16             sub _build_tax_bracket {
17             return [
18 12     12   534 { min => 0, max => 34930, fixed => 0, rate => 12 },
19             {
20             min => 34930,
21             max => 65904,
22             fixed => 4191.60,
23             rate => 23
24             },
25             {
26             min => 65904,
27             max => 147454,
28             fixed => 11315.62,
29             rate => 42
30             },
31             {
32             min => 147454,
33             max => 'inf' * 1,
34             fixed => 45566.62,
35             rate => 52
36             },
37             ];
38             }
39              
40             sub is_year {
41 21     21 1 67 my $self = shift;
42 21         44 my $year = shift;
43 21 100       91 return 1 if $year == 2021;
44 13 100       45 return 1 if $year == 2022; # same rules apply
45 9         22 return 0;
46             }
47              
48              
49             __PACKAGE__->meta->make_immutable;
50              
51             __END__
52              
53             =pod
54              
55             =encoding UTF-8
56              
57             =head1 NAME
58              
59             Finance::Tax::Aruba::Income::2021 - Income tax calculator for the year 2021
60              
61             =head1 VERSION
62              
63             version 0.009
64              
65             =head1 SYNOPSIS
66              
67             =head1 DESCRIPTION
68              
69             Calculate your taxes and other social premiums for the year 2021 and 2022.
70              
71             =head1 METHODS
72              
73             =head2 is_year
74              
75             Year selector method
76              
77             if ($module->is_year(2020)) {
78             return "year is 2020";
79             }
80              
81             =head1 SEE ALSO
82              
83             This class implements the L<Finance::Tax::Aruba::Role::Income::TaxYear> role.
84              
85             =head1 AUTHOR
86              
87             Wesley Schwengle <waterkip@cpan.org>
88              
89             =head1 COPYRIGHT AND LICENSE
90              
91             This software is Copyright (c) 2020 by Wesley Schwengle.
92              
93             This is free software, licensed under:
94              
95             The (three-clause) BSD License
96              
97             =cut