|
Lines 19-25
Link Here
|
| 19 |
|
19 |
|
| 20 |
use Modern::Perl; |
20 |
use Modern::Perl; |
| 21 |
|
21 |
|
| 22 |
use Test::More tests => 41; |
22 |
use Test::More tests => 42; |
| 23 |
use Test::Warn; |
23 |
use Test::Warn; |
| 24 |
use Test::Exception; |
24 |
use Test::Exception; |
| 25 |
use Test::MockModule; |
25 |
use Test::MockModule; |
|
Lines 2030-2035
subtest 'anonymize' => sub {
Link Here
|
| 2030 |
$patron2->discard_changes; # refresh |
2030 |
$patron2->discard_changes; # refresh |
| 2031 |
is( $patron2->firstname, undef, 'First name patron2 cleared' ); |
2031 |
is( $patron2->firstname, undef, 'First name patron2 cleared' ); |
| 2032 |
}; |
2032 |
}; |
|
|
2033 |
|
| 2033 |
$schema->storage->txn_rollback; |
2034 |
$schema->storage->txn_rollback; |
| 2034 |
|
2035 |
|
| 2035 |
subtest 'extended_attributes' => sub { |
2036 |
subtest 'extended_attributes' => sub { |
|
Lines 2204-2206
subtest 'extended_attributes' => sub {
Link Here
|
| 2204 |
|
2205 |
|
| 2205 |
$schema->storage->txn_rollback; |
2206 |
$schema->storage->txn_rollback; |
| 2206 |
}; |
2207 |
}; |
| 2207 |
- |
2208 |
|
|
|
2209 |
subtest 'search_patrons_with_unpaid_fines() tests' => sub { |
| 2210 |
|
| 2211 |
plan tests => 7; |
| 2212 |
|
| 2213 |
$schema->storage->txn_begin; |
| 2214 |
|
| 2215 |
my $patrons_with_fines = Koha::Patrons->search({ branchcode => $library->{branchcode} })->search_patrons_with_unpaid_fines(); |
| 2216 |
is( scalar( @$patrons_with_fines ), 0, 'search_patrons_with_unpaid_fines() should return empty array' ); |
| 2217 |
|
| 2218 |
my $library = $builder->build({source => 'Branch' }); |
| 2219 |
|
| 2220 |
my $patron1 = $builder->build_object({ class => 'Koha::Patrons', value => { branchcode => $library->{branchcode} }}); |
| 2221 |
my $account1 = $patron1->account; |
| 2222 |
$account1->add_debit({ amount => 10, interface => 'commandline', type => 'OVERDUE' }); |
| 2223 |
|
| 2224 |
my $patron2 = $builder->build_object({ class => 'Koha::Patrons', value => { branchcode => $library->{branchcode} }}); |
| 2225 |
my $account2 = $patron2->account; |
| 2226 |
$account2->add_debit({ amount => 10, interface => 'commandline', type => 'OVERDUE' }); |
| 2227 |
|
| 2228 |
$patrons_with_fines = Koha::Patrons->search({ branchcode => $library->{branchcode} })->search_patrons_with_unpaid_fines(); |
| 2229 |
is( scalar( @$patrons_with_fines ), 2, 'search_patrons_with_unpaid_fines() should return array with 2 values' ); |
| 2230 |
is( $patrons_with_fines->[0]->{ borrowernumber }, $patron1->borrowernumber, 'patron1 should be in array'); |
| 2231 |
is( $patrons_with_fines->[1]->{ borrowernumber }, $patron2->borrowernumber, 'patron2 should be in array'); |
| 2232 |
is( $patrons_with_fines->[0]->{ accountbalance }, $account1->balance, 'patron1 fines are correct'); |
| 2233 |
is( $patrons_with_fines->[1]->{ accountbalance }, $account2->balance, 'patron2 fines are correct'); |
| 2234 |
|
| 2235 |
$account2->add_credit({ amount => 10, interface => 'commandline' }); |
| 2236 |
$patrons_with_fines = Koha::Patrons->search({ branchcode => $library->{branchcode} })->search_patrons_with_unpaid_fines(); |
| 2237 |
is( scalar( @$patrons_with_fines ), 1, 'Patron without fines is not in array'); |
| 2238 |
|
| 2239 |
$schema->storage->txn_rollback; |
| 2240 |
} |