From c829e0e296f848120b6dfd7f3f7a6b3e2a2068a2 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Mon, 9 Mar 2020 13:36:22 -0400 Subject: [PATCH] Bug 21443: Unit tests Signed-off-by: Kyle M Hall Signed-off-by: Marti Fuerst Signed-off-by: Katrin Fischer --- t/db_dependent/Koha/Charges/Fees.t | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/t/db_dependent/Koha/Charges/Fees.t b/t/db_dependent/Koha/Charges/Fees.t index f5a53714fb..a28cc48f92 100644 --- a/t/db_dependent/Koha/Charges/Fees.t +++ b/t/db_dependent/Koha/Charges/Fees.t @@ -61,12 +61,14 @@ my $itemtype = $builder->build_object( { class => 'Koha::ItemTypes', value => { - rentalcharge_daily => '0.00', - rentalcharge_hourly => '0.00', - rentalcharge => '0.00', - processfee => '0.00', - defaultreplacecost => '0.00', - }, + rentalcharge_daily => '0.00', + rentalcharge_daily_calendar => 1, + rentalcharge_hourly => '0.00', + rentalcharge_hourly_calendar => 1, + rentalcharge => '0.00', + processfee => '0.00', + defaultreplacecost => '0.00', + }, } ); my $item = $builder->build_object( @@ -307,7 +309,7 @@ subtest 'from_date accessor' => sub { }; subtest 'accumulate_rentalcharge tests' => sub { - plan tests => 7; + plan tests => 9; my $fees = Koha::Charges::Fees->new( { @@ -347,6 +349,13 @@ subtest 'accumulate_rentalcharge tests' => sub { 'Daily rental charge calculated correctly with finesCalendar = noFinesWhenClosed' ); + $itemtype->rentalcharge_daily_calendar(0)->store(); + $charge = $fees->accumulate_rentalcharge(); + is( $charge, 6.00, +'Daily rental charge calculated correctly with finesCalendar = noFinesWhenClosed and rentalcharge_daily_calendar = 0' + ); + $itemtype->rentalcharge_daily_calendar(1)->store(); + my $calendar = C4::Calendar->new( branchcode => $library->id ); # DateTime 1..7 (Mon..Sun), C4::Calender 0..6 (Sun..Sat) my $closed_day = @@ -409,6 +418,13 @@ subtest 'accumulate_rentalcharge tests' => sub { "Hourly rental charge calculated correctly with finesCalendar = noFinesWhenClosed and closed $dayname (96h - 24h * 0.25u)" ); + $itemtype->rentalcharge_hourly_calendar(0)->store(); + $charge = $fees->accumulate_rentalcharge(); + is( $charge, 24.00, +"Hourly rental charge calculated correctly with finesCalendar = noFinesWhenClosed and closed $dayname (96h - 24h * 0.25u) and rentalcharge_hourly_calendar = 0" + ); + $itemtype->rentalcharge_hourly_calendar(1)->store(); + $calendar->delete_holiday( weekday => $closed_day ); $charge = $fees->accumulate_rentalcharge(); is( $charge, 24.00, 'Hourly rental charge calculated correctly with finesCalendar = noFinesWhenClosed (96h - 0h * 0.25u)' ); -- 2.11.0