Bugzilla – Attachment 172071 Details for
Bug 33462
Force password change for new patrons entered by staff
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 33462: (QA follow-up) Tidy code
Bug-33462-QA-follow-up-Tidy-code.patch (text/plain), 15.07 KB, created by
Kyle M Hall (khall)
on 2024-09-26 20:15:53 UTC
(
hide
)
Description:
Bug 33462: (QA follow-up) Tidy code
Filename:
MIME Type:
Creator:
Kyle M Hall (khall)
Created:
2024-09-26 20:15:53 UTC
Size:
15.07 KB
patch
obsolete
>From 81399cd4f55bb5511fae0d5787a40a7874f9ec3a Mon Sep 17 00:00:00 2001 >From: Kyle M Hall <kyle@bywatersolutions.com> >Date: Thu, 26 Sep 2024 16:08:07 -0400 >Subject: [PATCH] Bug 33462: (QA follow-up) Tidy code > >Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> >--- > Koha/Schema/Result/Category.pm | 2 +- > t/db_dependent/Koha/Patron.t | 157 +++++++++++++++----------- > t/db_dependent/Koha/Patron/Category.t | 66 +++++++---- > 3 files changed, 137 insertions(+), 88 deletions(-) > >diff --git a/Koha/Schema/Result/Category.pm b/Koha/Schema/Result/Category.pm >index 30a67d5d0ea..616677608d4 100644 >--- a/Koha/Schema/Result/Category.pm >+++ b/Koha/Schema/Result/Category.pm >@@ -403,12 +403,12 @@ __PACKAGE__->has_many( > # Created by DBIx::Class::Schema::Loader v0.07051 @ 2024-09-17 17:34:19 > # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:SZoU95HraPfIzszljOSHyQ > >- > # You can replace this text with custom code or comments, and it will be preserved on regeneration > > sub koha_object_class { > 'Koha::Patron::Category'; > } >+ > sub koha_objects_class { > 'Koha::Patron::Categories'; > } >diff --git a/t/db_dependent/Koha/Patron.t b/t/db_dependent/Koha/Patron.t >index 403c65c984b..06166f25e17 100755 >--- a/t/db_dependent/Koha/Patron.t >+++ b/t/db_dependent/Koha/Patron.t >@@ -1355,39 +1355,58 @@ subtest 'password expiration tests' => sub { > plan tests => 5; > > $schema->storage->txn_begin; >- my $date = dt_from_string(); >- my $category = $builder->build_object({ class => 'Koha::Patron::Categories', value => { >- password_expiry_days => 10, >- require_strong_password => 0, >- force_password_reset_when_set_by_staff => 0, >+ my $date = dt_from_string(); >+ my $category = $builder->build_object( >+ { >+ class => 'Koha::Patron::Categories', >+ value => { >+ password_expiry_days => 10, >+ require_strong_password => 0, >+ force_password_reset_when_set_by_staff => 0, >+ } > } >- }); >- my $patron = $builder->build_object({ class=> 'Koha::Patrons', value => { >- categorycode => $category->categorycode, >- password => 'hats' >+ ); >+ my $patron = $builder->build_object( >+ { >+ class => 'Koha::Patrons', >+ value => { >+ categorycode => $category->categorycode, >+ password => 'hats' >+ } > } >- }); >+ ); > >- $patron->delete()->store()->discard_changes(); # Make sure we are storing a 'new' patron >+ $patron->delete()->store()->discard_changes(); # Make sure we are storing a 'new' patron > >- is( $patron->password_expiration_date(), $date->add( days => 10 )->ymd() , "Password expiration date set correctly on patron creation"); >+ is( >+ $patron->password_expiration_date(), $date->add( days => 10 )->ymd(), >+ "Password expiration date set correctly on patron creation" >+ ); > >- $patron = $builder->build_object({ class => 'Koha::Patrons', value => { >- categorycode => $category->categorycode, >- password => undef >+ $patron = $builder->build_object( >+ { >+ class => 'Koha::Patrons', >+ value => { >+ categorycode => $category->categorycode, >+ password => undef >+ } > } >- }); >+ ); > $patron->delete()->store()->discard_changes(); > >- is( $patron->password_expiration_date(), undef, "Password expiration date is not set if patron does not have a password"); >+ is( >+ $patron->password_expiration_date(), undef, >+ "Password expiration date is not set if patron does not have a password" >+ ); > > $category->password_expiry_days(undef)->store(); >- $patron = $builder->build_object({ class => 'Koha::Patrons', value => { >- categorycode => $category->categorycode >- } >- }); >+ $patron = >+ $builder->build_object( { class => 'Koha::Patrons', value => { categorycode => $category->categorycode } } ); > $patron->delete()->store()->discard_changes(); >- is( $patron->password_expiration_date(), undef, "Password expiration date is not set if category does not have expiry days set"); >+ is( >+ $patron->password_expiration_date(), undef, >+ "Password expiration date is not set if category does not have expiry days set" >+ ); > > $schema->storage->txn_rollback; > >@@ -1397,18 +1416,16 @@ subtest 'password expiration tests' => sub { > > $schema->storage->txn_begin; > my $date = dt_from_string(); >- $patron = $builder->build_object({ class => 'Koha::Patrons', value => { >- password_expiration_date => undef >- } >- }); >- is( $patron->password_expired, 0, "Patron with no password expiration date, password not expired"); >- $patron->password_expiration_date( $date )->store; >+ $patron = >+ $builder->build_object( { class => 'Koha::Patrons', value => { password_expiration_date => undef } } ); >+ is( $patron->password_expired, 0, "Patron with no password expiration date, password not expired" ); >+ $patron->password_expiration_date($date)->store; > $patron->discard_changes(); >- is( $patron->password_expired, 1, "Patron with password expiration date of today, password expired"); >+ is( $patron->password_expired, 1, "Patron with password expiration date of today, password expired" ); > $date->subtract( days => 1 ); >- $patron->password_expiration_date( $date )->store; >+ $patron->password_expiration_date($date)->store; > $patron->discard_changes(); >- is( $patron->password_expired, 1, "Patron with password expiration date in past, password expired"); >+ is( $patron->password_expired, 1, "Patron with password expiration date in past, password expired" ); > > $schema->storage->txn_rollback; > }; >@@ -1420,26 +1437,33 @@ subtest 'password expiration tests' => sub { > $schema->storage->txn_begin; > > my $date = dt_from_string(); >- my $category = $builder->build_object({ class => 'Koha::Patron::Categories', value => { >- password_expiry_days => 10 >- } >- }); >- my $patron = $builder->build_object({ class => 'Koha::Patrons', value => { >- categorycode => $category->categorycode, >- password_expiration_date => $date->subtract( days => 1 ) >+ my $category = >+ $builder->build_object( { class => 'Koha::Patron::Categories', value => { password_expiry_days => 10 } } ); >+ my $patron = $builder->build_object( >+ { >+ class => 'Koha::Patrons', >+ value => { >+ categorycode => $category->categorycode, >+ password_expiration_date => $date->subtract( days => 1 ) >+ } > } >- }); >- is( $patron->password_expired, 1, "Patron password is expired"); >+ ); >+ is( $patron->password_expired, 1, "Patron password is expired" ); > > $date = dt_from_string(); >- $patron->set_password({ password => "kitten", skip_validation => 1 })->discard_changes(); >- is( $patron->password_expired, 0, "Patron password no longer expired when new password set"); >- is( $patron->password_expiration_date(), $date->add( days => 10 )->ymd(), "Password expiration date set correctly on patron creation"); >- >+ $patron->set_password( { password => "kitten", skip_validation => 1 } )->discard_changes(); >+ is( $patron->password_expired, 0, "Patron password no longer expired when new password set" ); >+ is( >+ $patron->password_expiration_date(), $date->add( days => 10 )->ymd(), >+ "Password expiration date set correctly on patron creation" >+ ); > >- $category->password_expiry_days( undef )->store(); >- $patron->set_password({ password => "puppies", skip_validation => 1 })->discard_changes(); >- is( $patron->password_expiration_date(), undef, "Password expiration date is unset if category does not have expiry days"); >+ $category->password_expiry_days(undef)->store(); >+ $patron->set_password( { password => "puppies", skip_validation => 1 } )->discard_changes(); >+ is( >+ $patron->password_expiration_date(), undef, >+ "Password expiration date is unset if category does not have expiry days" >+ ); > > $schema->storage->txn_rollback; > }; >@@ -1451,33 +1475,40 @@ subtest 'force_password_reset_when_set_by_staff tests' => sub { > > $schema->storage->txn_begin; > >- my $category = $builder->build_object({ >- class => 'Koha::Patron::Categories', >- value => { >- force_password_reset_when_set_by_staff => 1, >- require_strong_password => 0, >+ my $category = $builder->build_object( >+ { >+ class => 'Koha::Patron::Categories', >+ value => { >+ force_password_reset_when_set_by_staff => 1, >+ require_strong_password => 0, >+ } > } >- }); >+ ); > >- my $patron = $builder->build_object({ >- class => 'Koha::Patrons', >- value => { >- categorycode => $category->categorycode, >- password => 'hats' >+ my $patron = $builder->build_object( >+ { >+ class => 'Koha::Patrons', >+ value => { >+ categorycode => $category->categorycode, >+ password => 'hats' >+ } > } >- }); >+ ); > > $patron->delete()->store()->discard_changes(); >- is($patron->password_expired, 1, "Patron forced into changing password, password expired."); >+ is( $patron->password_expired, 1, "Patron forced into changing password, password expired." ); > > $patron->category->force_password_reset_when_set_by_staff(0)->store(); > $patron->delete()->store()->discard_changes(); >- is($patron->password_expired, 0, "Patron not forced into changing password, password not expired."); >+ is( $patron->password_expired, 0, "Patron not forced into changing password, password not expired." ); > > $patron->category->force_password_reset_when_set_by_staff(1)->store(); >- t::lib::Mocks::mock_preference('PatronSelfRegistrationDefaultCategory', $patron->categorycode); >+ t::lib::Mocks::mock_preference( 'PatronSelfRegistrationDefaultCategory', $patron->categorycode ); > $patron->delete()->store()->discard_changes(); >- is($patron->password_expired, 0, "Patron forced into changing password but patron is self registered, password not expired."); >+ is( >+ $patron->password_expired, 0, >+ "Patron forced into changing password but patron is self registered, password not expired." >+ ); > > $schema->storage->txn_rollback; > }; >diff --git a/t/db_dependent/Koha/Patron/Category.t b/t/db_dependent/Koha/Patron/Category.t >index 4e3670b78a3..0d7f42fa381 100755 >--- a/t/db_dependent/Koha/Patron/Category.t >+++ b/t/db_dependent/Koha/Patron/Category.t >@@ -212,27 +212,39 @@ subtest 'effective_force_password_reset_when_set_by_staff() tests' => sub { > > $schema->storage->txn_begin; > >- my $category = $builder->build_object({ >- class => 'Koha::Patron::Categories', >- value => { >- force_password_reset_when_set_by_staff => 1 >+ my $category = $builder->build_object( >+ { >+ class => 'Koha::Patron::Categories', >+ value => { force_password_reset_when_set_by_staff => 1 } > } >- }); >+ ); > >- t::lib::Mocks::mock_preference('ForcePasswordResetWhenSetByStaff', 0); >- ok($category->effective_force_password_reset_when_set_by_staff, 'ForcePasswordResetWhenSetByStaff unset, but category has the flag set to 1'); >+ t::lib::Mocks::mock_preference( 'ForcePasswordResetWhenSetByStaff', 0 ); >+ ok( >+ $category->effective_force_password_reset_when_set_by_staff, >+ 'ForcePasswordResetWhenSetByStaff unset, but category has the flag set to 1' >+ ); > >- t::lib::Mocks::mock_preference('ForcePasswordResetWhenSetByStaff', 1); >- ok($category->effective_force_password_reset_when_set_by_staff, 'ForcePasswordResetWhenSetByStaff set and category has the flag set to 1'); >+ t::lib::Mocks::mock_preference( 'ForcePasswordResetWhenSetByStaff', 1 ); >+ ok( >+ $category->effective_force_password_reset_when_set_by_staff, >+ 'ForcePasswordResetWhenSetByStaff set and category has the flag set to 1' >+ ); > > # disable > $category->force_password_reset_when_set_by_staff(0)->store->discard_changes; > >- t::lib::Mocks::mock_preference('ForcePasswordResetWhenSetByStaff', 0); >- ok(!$category->effective_force_password_reset_when_set_by_staff, 'ForcePasswordResetWhenSetByStaff unset, but category has the flag set to 0'); >+ t::lib::Mocks::mock_preference( 'ForcePasswordResetWhenSetByStaff', 0 ); >+ ok( >+ !$category->effective_force_password_reset_when_set_by_staff, >+ 'ForcePasswordResetWhenSetByStaff unset, but category has the flag set to 0' >+ ); > >- t::lib::Mocks::mock_preference('ForcePasswordResetWhenSetByStaff', 1); >- ok(!$category->effective_force_password_reset_when_set_by_staff, 'ForcePasswordResetWhenSetByStaff set and category has the flag set to 0'); >+ t::lib::Mocks::mock_preference( 'ForcePasswordResetWhenSetByStaff', 1 ); >+ ok( >+ !$category->effective_force_password_reset_when_set_by_staff, >+ 'ForcePasswordResetWhenSetByStaff set and category has the flag set to 0' >+ ); > > $schema->storage->txn_rollback; > }; >@@ -242,18 +254,24 @@ subtest 'effective_force_password_reset_when_set_by_staff() tests' => sub { > > $schema->storage->txn_begin; > >- my $category = $builder->build_object({ >- class => 'Koha::Patron::Categories', >- value => { >- force_password_reset_when_set_by_staff => undef >+ my $category = $builder->build_object( >+ { >+ class => 'Koha::Patron::Categories', >+ value => { force_password_reset_when_set_by_staff => undef } > } >- }); >- >- t::lib::Mocks::mock_preference('ForcePasswordResetWhenSetByStaff', 0); >- ok(!$category->effective_force_password_reset_when_set_by_staff, 'ForcePasswordResetWhenSetByStaff set to 0 used'); >- >- t::lib::Mocks::mock_preference('ForcePasswordResetWhenSetByStaff', 1); >- ok($category->effective_force_password_reset_when_set_by_staff, 'ForcePasswordResetWhenSetByStaff set to 1 used'); >+ ); >+ >+ t::lib::Mocks::mock_preference( 'ForcePasswordResetWhenSetByStaff', 0 ); >+ ok( >+ !$category->effective_force_password_reset_when_set_by_staff, >+ 'ForcePasswordResetWhenSetByStaff set to 0 used' >+ ); >+ >+ t::lib::Mocks::mock_preference( 'ForcePasswordResetWhenSetByStaff', 1 ); >+ ok( >+ $category->effective_force_password_reset_when_set_by_staff, >+ 'ForcePasswordResetWhenSetByStaff set to 1 used' >+ ); > > $schema->storage->txn_rollback; > }; >-- >2.39.5 (Apple Git-154)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 33462
:
153687
|
153688
|
153689
|
154395
|
154396
|
154397
|
167582
|
167583
|
167584
|
167585
|
167586
|
167587
|
167981
|
167982
|
167983
|
167984
|
167985
|
167986
|
168413
|
168414
|
168415
|
168416
|
168417
|
168418
|
168452
|
168453
|
168454
|
168455
|
168456
|
168457
|
171634
|
171635
|
171636
|
171637
|
171638
|
171639
|
171640
|
172030
|
172031
|
172032
|
172033
|
172034
|
172035
|
172036
|
172064
|
172065
|
172066
|
172067
|
172068
|
172069
|
172070
| 172071 |
173864
|
173865