Browse Source

Bug 28873: Fix age displayed in db_dependent/Koha/Patrons.t

In test suite db_dependent/Koha/Patrons.t actually shows :

    1..10
    ok 1 - Patron with no dateofbirth is always valid for any category
    ok 2 - Today=2020-02-28, dob=2015-03-01, is 5, should be valid=0
    ok 3 - Today=2020-02-28, dob=2015-02-27, is 5, should be valid=1
    ok 4 - Today=2020-02-28, dob=2009-02-28, is 11, should be valid=0
    ok 5 - Today=2020-02-28, dob=2015-02-28, is 7, should be valid=1
    ok 6 - Today=2020-02-28, dob=2009-02-27, is 11, should be valid=0
    ok 7 - Today=2020-02-28, dob=2016-08-27, is 3, should be valid=0
    ok 8 - Today=2020-02-28, dob=2009-03-01, is 11, should be valid=1
    ok 9 - Today=2020-02-28, dob=2007-08-27, is 12, should be valid=0
    ok 10 - Today=2020-02-28, dob=2015-02-28, is 5, should be valid=1

Some ages are incorrect :

1) dob=2009-03-01, is 11
=> it is age 10
so valid=1 in category 5 to 10

2) dob=2015-03-01, is 5
=> it is age 4
so valid=0 in category 5 to 10

3) dob=2015-02-28, is 7
=> this date of birth is already tested
I suppose here dob is wrong, age wanted is 7 in the middle of age restrictions.
so dob=2013-02-28

This patch fixes ages.
Also adds the category code 'AGE_5_10' in messages to display age limits

Test plan :
Run prove -v t/db_dependent/Koha/Patrons.t without and with patch

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
21.11.x
Fridolin Somers 3 years ago
committed by Jonathan Druart
parent
commit
508aa6837c
  1. 14
      t/db_dependent/Koha/Patrons.t

14
t/db_dependent/Koha/Patrons.t

@ -788,7 +788,7 @@ subtest 'is_valid_age' => sub {
my $patron = $builder->build({
source => 'Borrower',
value => {
categorycode => 'AGE_5_10'
categorycode => $category->categorycode
}
});
$patron = Koha::Patrons->find( $patron->{borrowernumber} );
@ -805,17 +805,17 @@ subtest 'is_valid_age' => sub {
add_m3_m6_m1 =>
{ date => '2016-08-27', expected_age => 3, valid => 0 },
add_m7_m6_m1 =>
{ date => '2015-02-28', expected_age => 7, valid => 1 },
{ date => '2013-02-28', expected_age => 7, valid => 1 },
add_m5_0_0 =>
{ date => '2015-02-28', expected_age => 5, valid => 1 },
add_m5_0_p1 =>
{ date => '2015-03-01', expected_age => 5, valid => 0 },
{ date => '2015-03-01', expected_age => 4, valid => 0 },
add_m5_0_m1 =>
{ date => '2015-02-27', expected_age => 5, valid => 1 },
add_m11_0_0 =>
{ date => '2009-02-28', expected_age => 11, valid => 0 },
add_m11_0_p1 =>
{ date => '2009-03-01', expected_age => 11, valid => 1 },
{ date => '2009-03-01', expected_age => 10, valid => 1 },
add_m11_0_m1 =>
{ date => '2009-02-27', expected_age => 11, valid => 0 },
},
@ -827,7 +827,7 @@ subtest 'is_valid_age' => sub {
Time::Fake->offset( $dt->epoch );
for my $k ( keys %$date ) {
for my $k ( sort keys %$date ) {
next if $k eq 'today';
my $dob = $date->{$k};
@ -836,8 +836,8 @@ subtest 'is_valid_age' => sub {
$patron->is_valid_age,
$dob->{valid},
sprintf(
"Today=%s, dob=%s, is %s, should be valid=%s",
$date->{today}, $dob->{date}, $dob->{expected_age}, $dob->{valid}
"Today=%s, dob=%s, is %s, should be valid=%s in category %s",
$date->{today}, $dob->{date}, $dob->{expected_age}, $dob->{valid}, $category->categorycode
)
);
}

Loading…
Cancel
Save