Bug 23077: Fix import of cardnumber 0
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> (cherry picked from commit9796f5adb3) Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> (cherry picked from commitdd91300c04) Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
This commit is contained in:
parent
b450462d74
commit
480ce53dd8
|
|
@ -132,7 +132,8 @@ sub import_patrons {
|
|||
}
|
||||
}
|
||||
}
|
||||
$borrower{cardnumber} = undef unless $borrower{cardnumber};
|
||||
|
||||
$borrower{cardnumber} = undef if $borrower{cardnumber} eq "";
|
||||
|
||||
# Check if borrower category code exists and if it matches to a known category. Pushing error to missing_criticals otherwise.
|
||||
$self->check_borrower_category($borrower{categorycode}, $borrowerline, $line_number, \@missing_criticals);
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
# along with Koha; if not, see <http://www.gnu.org/licenses>.
|
||||
|
||||
use Modern::Perl;
|
||||
use Test::More tests => 156;
|
||||
use Test::More tests => 157;
|
||||
use Test::Warn;
|
||||
|
||||
# To be replaced by t::lib::Mock
|
||||
|
|
@ -397,12 +397,37 @@ subtest 'test_import_without_cardnumber' => sub {
|
|||
my $defaults = { cardnumber => "" }; #currently all the defaults come as "" if not filled
|
||||
|
||||
my $result = $patrons_import->import_patrons($params_1, $defaults);
|
||||
warn Data::Dumper::Dumper( $result );
|
||||
like($result->{feedback}->[1]->{value}, qr/^Squarepants \/ \d+/, 'First borrower imported as expected');
|
||||
like($result->{feedback}->[2]->{value}, qr/^Star \/ \d+/, 'Second borrower imported as expected');
|
||||
|
||||
};
|
||||
|
||||
subtest 'test_import_with_cardnumber_0' => sub {
|
||||
plan tests => 2;
|
||||
|
||||
#Remove possible existing user with a "" as cardnumber
|
||||
my $zero_card = Koha::Patrons->find({ cardnumber => 0 });
|
||||
$zero_card->delete if $zero_card;
|
||||
|
||||
my $branchcode = $builder->build({ source => "Branch"})->{branchcode};
|
||||
my $categorycode = $builder->build({ source => "Category"})->{categorycode};
|
||||
my $csv_headers = 'cardnumber,surname, branchcode, categorycode';
|
||||
my $res_headers = 'cardnumber,surname, branchcode, categorycode';
|
||||
my $csv_nocard_1 = "0,Squarepants,$branchcode,$categorycode";
|
||||
|
||||
my $filename_1 = make_csv($temp_dir, $csv_headers, $csv_nocard_1);
|
||||
open(my $handle_1, "<", $filename_1) or die "cannot open < $filename_1: $!";
|
||||
my $params_1 = { file => $handle_1, };
|
||||
|
||||
my $defaults = { cardnumber => "" }; #currently all the defaults come as "" if not filled
|
||||
|
||||
my $result = $patrons_import->import_patrons($params_1, $defaults);
|
||||
like($result->{feedback}->[1]->{value}, qr/^Squarepants \/ \d+/, 'First borrower imported as expected');
|
||||
$zero_card = Koha::Patrons->find({ cardnumber => 0 });
|
||||
is($zero_card->surname.$zero_card->branchcode.$zero_card->categorycode,'Squarepants'.$branchcode.$categorycode,"Patron with cardnumber 0 is the imported patron");
|
||||
|
||||
};
|
||||
|
||||
|
||||
subtest 'test_prepare_columns' => sub {
|
||||
plan tests => 16;
|
||||
|
|
|
|||
Loading…
Reference in New Issue