Bug 13757: (regression tests) Empty attributes should delete existing
This patch introduces tests for the required functionality. To test: - Run: $ prove t/db_dependent/Koha/Patron/Modifications.t => FAIL: The current code doesn't work like that Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> https://bugs.koha-community.org/show_bug.cgi?id=13737 Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
parent
2811d8555d
commit
bb039e0328
1 changed files with 25 additions and 1 deletions
|
@ -132,7 +132,7 @@ subtest 'store( extended_attributes ) tests' => sub {
|
|||
|
||||
subtest 'approve tests' => sub {
|
||||
|
||||
plan tests => 14;
|
||||
plan tests => 18;
|
||||
|
||||
$schema->storage->txn_begin;
|
||||
|
||||
|
@ -224,6 +224,30 @@ subtest 'approve tests' => sub {
|
|||
is( $patron_attributes[2]->{attribute},
|
||||
'None', 'Attribute updated correctly (attribute)' );
|
||||
|
||||
my $empty_code_json = '[{"code":"CODE_2","value":""}]';
|
||||
$verification_token = md5_hex( time() . {} . rand() . {} . $$ );
|
||||
|
||||
$patron_modification = Koha::Patron::Modification->new(
|
||||
{ borrowernumber => $patron->borrowernumber,
|
||||
extended_attributes => $empty_code_json,
|
||||
verification_token => $verification_token
|
||||
}
|
||||
)->store();
|
||||
ok( $patron_modification->approve,
|
||||
'Patron modification correctly approved' );
|
||||
@patron_attributes
|
||||
= map { $_->unblessed }
|
||||
Koha::Patron::Attributes->search(
|
||||
{ borrowernumber => $patron->borrowernumber } );
|
||||
|
||||
is( $patron_attributes[0]->{code},
|
||||
'CODE_1', 'Untouched attribute type is preserved (code)' );
|
||||
is( $patron_attributes[0]->{attribute},
|
||||
'VALUE_1', 'Untouched attribute type is preserved (attribute)' );
|
||||
|
||||
my $count = Koha::Patron::Attributes->search({ borrowernumber => $patron->borrowernumber, code => 'CODE_2' })->count;
|
||||
is( $count, 0, 'Attributes deleted when modification contained an empty one');
|
||||
|
||||
$schema->storage->txn_rollback;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue