From 4fef4e1832c137d63837594d8d123fcece8d70c5 Mon Sep 17 00:00:00 2001 From: Blou Date: Fri, 27 Oct 2023 17:14:38 -0400 Subject: [PATCH] Bug 35250: modify t/db_dependent tests to use Koha::Config::SysPrefs' set_preference instead of C4::Context Some work left to be done, including missing use at top of files --- t/db_dependent/Circulation.t | 12 ++++----- t/db_dependent/Context.t | 15 ++++++----- t/db_dependent/Koha/Item.t | 14 +++++----- .../Koha/REST/Plugin/PluginRoutes.t | 4 +-- .../cronjobs/advance_notices_digest.t | 2 +- t/db_dependent/selenium/00-onboarding.t | 4 +-- t/db_dependent/selenium/01-installation.t | 12 ++++----- t/db_dependent/selenium/authentication_2fa.t | 8 +++--- t/db_dependent/selenium/patrons_search.t | 26 +++++++++---------- t/db_dependent/selenium/regressions.t | 12 ++++----- t/db_dependent/selenium/remove_from_cart.t | 4 +-- t/db_dependent/selenium/self_registration.t | 8 +++--- t/db_dependent/sysprefs.t | 13 +++++----- t/db_dependent/www/regressions.t | 6 ++--- 14 files changed, 71 insertions(+), 69 deletions(-) diff --git a/t/db_dependent/Circulation.t b/t/db_dependent/Circulation.t index 288c565013..6617cb9f68 100755 --- a/t/db_dependent/Circulation.t +++ b/t/db_dependent/Circulation.t @@ -433,7 +433,7 @@ my ( $reused_itemnumber_1, $reused_itemnumber_2 ); subtest "CanBookBeRenewed tests" => sub { plan tests => 113; - C4::Context->set_preference('ItemsDeniedRenewal',''); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal',''); # Generate test biblio my $biblio = $builder->build_sample_biblio(); @@ -1183,9 +1183,9 @@ subtest "CanBookBeRenewed tests" => sub { } } ); - C4::Context->set_preference('OPACFineNoRenewalsBlockAutoRenew','1'); - C4::Context->set_preference('OPACFineNoRenewals','10'); - C4::Context->set_preference('OPACFineNoRenewalsIncludeCredit','1'); + Koha::Config::SysPrefs->set_preference('OPACFineNoRenewalsBlockAutoRenew','1'); + Koha::Config::SysPrefs->set_preference('OPACFineNoRenewals','10'); + Koha::Config::SysPrefs->set_preference('OPACFineNoRenewalsIncludeCredit','1'); my $fines_amount = 5; my $account = Koha::Account->new({patron_id => $renewing_borrowernumber}); $account->add_debit( @@ -1243,14 +1243,14 @@ subtest "CanBookBeRenewed tests" => sub { is( $renewokay, 1, 'Renew, even if renewal is automatic' ); is( $error, 'auto_renew', 'Can auto renew, OPACFineNoRenewals=10, OPACFineNoRenewalsIncludeCredit=1, patron has 15 debt, 5 credit' ); - C4::Context->set_preference('OPACFineNoRenewalsIncludeCredit','0'); + Koha::Config::SysPrefs->set_preference('OPACFineNoRenewalsIncludeCredit','0'); ( $renewokay, $error ) = CanBookBeRenewed( $renewing_borrower_obj, $issue ); is( $renewokay, 0, 'Do not renew, renewal is automatic' ); is( $error, 'auto_too_much_oweing', 'Cannot auto renew, OPACFineNoRenewals=10, OPACFineNoRenewalsIncludeCredit=1, patron has 15 debt, 5 credit' ); $dbh->do('DELETE FROM accountlines WHERE borrowernumber=?', undef, $renewing_borrowernumber); - C4::Context->set_preference('OPACFineNoRenewalsIncludeCredit','1'); + Koha::Config::SysPrefs->set_preference('OPACFineNoRenewalsIncludeCredit','1'); }; subtest "auto_account_expired | BlockExpiredPatronOpacActions" => sub { diff --git a/t/db_dependent/Context.t b/t/db_dependent/Context.t index 67587b4798..749ceb7ebe 100755 --- a/t/db_dependent/Context.t +++ b/t/db_dependent/Context.t @@ -20,6 +20,7 @@ use Test::More tests => 5; use Test::MockModule; use C4::Context; +use Koha::Config::SysPrefs; use Koha::Database; our $schema; @@ -41,26 +42,26 @@ subtest 'Tests with preferences' => sub { my $dbh; ok($dbh = C4::Context->dbh(), 'Getting dbh from C4::Context'); - C4::Context->set_preference('OPACBaseURL','junk'); + Koha::Config::SysPrefs->set_preference('OPACBaseURL','junk'); C4::Context->clear_syspref_cache(); my $OPACBaseURL = C4::Context->preference('OPACBaseURL'); is($OPACBaseURL,'http://junk','OPACBaseURL saved with http:// when missing it'); - C4::Context->set_preference('OPACBaseURL','https://junk'); + Koha::Config::SysPrefs->set_preference('OPACBaseURL','https://junk'); C4::Context->clear_syspref_cache(); $OPACBaseURL = C4::Context->preference('OPACBaseURL'); is($OPACBaseURL,'https://junk','OPACBaseURL saved with https:// as specified'); - C4::Context->set_preference('OPACBaseURL','http://junk2'); + Koha::Config::SysPrefs->set_preference('OPACBaseURL','http://junk2'); C4::Context->clear_syspref_cache(); $OPACBaseURL = C4::Context->preference('OPACBaseURL'); is($OPACBaseURL,'http://junk2','OPACBaseURL saved with http:// as specified'); - C4::Context->set_preference('OPACBaseURL', ''); + Koha::Config::SysPrefs->set_preference('OPACBaseURL', ''); $OPACBaseURL = C4::Context->preference('OPACBaseURL'); is($OPACBaseURL,'','OPACBaseURL saved empty as specified'); - C4::Context->set_preference('SillyPreference','random'); + Koha::Config::SysPrefs->set_preference('SillyPreference','random'); C4::Context->clear_syspref_cache(); my $SillyPeference = C4::Context->preference('SillyPreference'); is($SillyPeference,'random','SillyPreference saved as specified'); @@ -73,7 +74,7 @@ subtest 'Tests with preferences' => sub { open my $trace, '>', \$trace_read or die "Can't open variable: $!"; $schema->storage->debugfh( $trace ); - C4::Context->set_preference('SillyPreference', 'thing1'); + Koha::Config::SysPrefs->set_preference('SillyPreference', 'thing1'); my $silly_preference = Koha::Config::SysPrefs->find('SillyPreference'); is( $silly_preference->variable, 'SillyPreference', 'set_preference should have kept the case sensitivity' ); @@ -114,7 +115,7 @@ subtest 'Tests with preferences' => sub { $silly_preference->delete(); # AutoEmailNewUser should be a YesNo pref - C4::Context->set_preference('AutoEmailNewUser', ''); + Koha::Config::SysPrefs->set_preference('AutoEmailNewUser', ''); my $yesno_pref = Koha::Config::SysPrefs->find('AutoEmailNewUser'); is( $yesno_pref->value(), 0, 'set_preference should have set the value to 0, instead of an empty string' ); diff --git a/t/db_dependent/Koha/Item.t b/t/db_dependent/Koha/Item.t index 7a21db18f5..cb20d2aef0 100755 --- a/t/db_dependent/Koha/Item.t +++ b/t/db_dependent/Koha/Item.t @@ -2213,12 +2213,12 @@ subtest 'is_denied_renewal' => sub { }); my $idr_rules = ""; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 0, 'Renewal allowed when no rules' ); # The wrong column delete should be silently ignored and not trigger item delete $idr_rules="delete: [yes]\nwithdrawn: [1]"; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 1, 'Renewal blocked when 1 rules (withdrawn)' ); is( $allow_book->is_denied_renewal, 0, 'Renewal allowed when 1 rules not matched (withdrawn)' ); @@ -2227,24 +2227,24 @@ subtest 'is_denied_renewal' => sub { is( $allow_book->is_denied_renewal, 0, 'Renewal allowed when 2 rules not matched (withdrawn, itype)' ); $idr_rules="withdrawn: [1]\nitype: [HIDE,INVISIBLE]\nlocation: [PROC]"; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 1, 'Renewal blocked when 3 rules matched (withdrawn, itype, location)' ); is( $allow_book->is_denied_renewal, 0, 'Renewal allowed when 3 rules not matched (withdrawn, itype, location)' ); $idr_rules="itemcallnumber: [null]"; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 1, 'Renewal blocked for undef when null in pref' ); $idr_rules="itemcallnumber: ['']"; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 0, 'Renewal not blocked for undef when "" in pref' ); $idr_rules="itemnotes: [null]"; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 0, 'Renewal not blocked for "" when null in pref' ); $idr_rules="itemnotes: ['']"; - C4::Context->set_preference('ItemsDeniedRenewal', $idr_rules); + Koha::Config::SysPrefs->set_preference('ItemsDeniedRenewal', $idr_rules); is( $deny_book->is_denied_renewal, 1, 'Renewal blocked for empty string when "" in pref' ); $schema->storage->txn_rollback; diff --git a/t/db_dependent/Koha/REST/Plugin/PluginRoutes.t b/t/db_dependent/Koha/REST/Plugin/PluginRoutes.t index 66746508ed..b9a06b607a 100755 --- a/t/db_dependent/Koha/REST/Plugin/PluginRoutes.t +++ b/t/db_dependent/Koha/REST/Plugin/PluginRoutes.t @@ -165,13 +165,13 @@ subtest 'Permissions and access to plugin routes tests' => sub { ok( exists $routes->{'/contrib/testplugin/patrons/bother'}, 'Route exists' ); ok( exists $routes->{'/contrib/testplugin/public/patrons/bother'}, 'Route exists' ); - C4::Context->set_preference( 'RESTPublicAnonymousRequests', 0 ); + Koha::Config::SysPrefs->set_preference( 'RESTPublicAnonymousRequests', 0 ); $t->get_ok('/api/v1/contrib/testplugin/public/patrons/bother') ->status_is(200, 'Plugin routes not affected by RESTPublicAnonymousRequests') ->json_is( { bothered => Mojo::JSON->true } ); - C4::Context->set_preference( 'RESTPublicAnonymousRequests', 1 ); + Koha::Config::SysPrefs->set_preference( 'RESTPublicAnonymousRequests', 1 ); $t->get_ok('/api/v1/contrib/testplugin/public/patrons/bother') ->status_is(200, 'Plugin routes not affected by RESTPublicAnonymousRequests') diff --git a/t/db_dependent/cronjobs/advance_notices_digest.t b/t/db_dependent/cronjobs/advance_notices_digest.t index b912f2a631..0b6309cd55 100755 --- a/t/db_dependent/cronjobs/advance_notices_digest.t +++ b/t/db_dependent/cronjobs/advance_notices_digest.t @@ -155,7 +155,7 @@ DELETESQL } }); - C4::Context->set_preference('EnhancedMessagingPreferences', 1); + Koha::Config::SysPrefs->set_preference('EnhancedMessagingPreferences', 1); } sub run_script { diff --git a/t/db_dependent/selenium/00-onboarding.t b/t/db_dependent/selenium/00-onboarding.t index e1218011e8..ce370aadd4 100755 --- a/t/db_dependent/selenium/00-onboarding.t +++ b/t/db_dependent/selenium/00-onboarding.t @@ -162,8 +162,8 @@ SKIP: { $s->submit_form; # Get the interface in the correct language - C4::Context->set_preference('language', $languages->{$lang} ); - C4::Context->set_preference('opaclanguages', $languages->{$lang} ); + Koha::Config::SysPrefs->set_preference('language', $languages->{$lang} ); + Koha::Config::SysPrefs->set_preference('opaclanguages', $languages->{$lang} ); $s->click( { href => '/mainpage.pl', main => 'onboarding-step5' } ); diff --git a/t/db_dependent/selenium/01-installation.t b/t/db_dependent/selenium/01-installation.t index ce9841b81f..6a41d25e7c 100755 --- a/t/db_dependent/selenium/01-installation.t +++ b/t/db_dependent/selenium/01-installation.t @@ -132,8 +132,8 @@ SKIP: { my $RequireStrongPassword = C4::Context->preference('RequireStrongPassword'); my $minPasswordLength = C4::Context->preference('minPasswordLength'); - C4::Context->set_preference('RequireStrongPassword', 0 ); - C4::Context->set_preference('minPasswordLength', 3 ); + Koha::Config::SysPrefs->set_preference('RequireStrongPassword', 0 ); + Koha::Config::SysPrefs->set_preference('minPasswordLength', 3 ); # Installation complete $s->click( { href => '/installer/onboarding.pl', main => 'installer-step3' } ); @@ -141,16 +141,16 @@ SKIP: { # Create Koha administrator patron $s->fill_form({ %$superlibrarian, password2 => $superlibrarian->{password} }); $s->submit_form; - C4::Context->set_preference('RequireStrongPassword', $RequireStrongPassword ); - C4::Context->set_preference('minPasswordLength', $minPasswordLength ); + Koha::Config::SysPrefs->set_preference('RequireStrongPassword', $RequireStrongPassword ); + Koha::Config::SysPrefs->set_preference('minPasswordLength', $minPasswordLength ); # Create a new circulation rule # Keep default values $s->submit_form; # Get the interface in the correct language - C4::Context->set_preference('language', $languages->{$lang} ); - C4::Context->set_preference('opaclanguages', $languages->{$lang} ); + Koha::Config::SysPrefs->set_preference('language', $languages->{$lang} ); + Koha::Config::SysPrefs->set_preference('opaclanguages', $languages->{$lang} ); $s->click( { href => '/mainpage.pl', main => 'onboarding-step5' } ); diff --git a/t/db_dependent/selenium/authentication_2fa.t b/t/db_dependent/selenium/authentication_2fa.t index ac9fe9be11..a49fb7750c 100755 --- a/t/db_dependent/selenium/authentication_2fa.t +++ b/t/db_dependent/selenium/authentication_2fa.t @@ -55,7 +55,7 @@ SKIP: { $driver->get($mainpage); like( $driver->get_title, qr(Log in to Koha), 'Hitting the main page should redirect to the login form'); - C4::Context->set_preference('TwoFactorAuthentication', 'disabled'); + Koha::Config::SysPrefs->set_preference('TwoFactorAuthentication', 'disabled'); fill_login_form($s); like( $driver->get_title, qr(Koha staff interface), 'Patron with flags superlibrarian should be able to login' ); @@ -63,7 +63,7 @@ SKIP: { $driver->get($s->base_url . q|members/two_factor_auth.pl|); like( $driver->get_title, qr(Error 404), 'Must be redirected to 404 is the pref is off' ); - C4::Context->set_preference('TwoFactorAuthentication', 'enabled'); + Koha::Config::SysPrefs->set_preference('TwoFactorAuthentication', 'enabled'); $driver->get($s->base_url . q|members/two_factor_auth.pl|); like( $driver->get_title, qr(Two-factor authentication), 'Must be on the page with the pref on' ); @@ -236,7 +236,7 @@ SKIP: { subtest "Enforce 2FA setup on first login" => sub { plan tests => 7; - C4::Context->set_preference( 'TwoFactorAuthentication', 'enforced' ); + Koha::Config::SysPrefs->set_preference( 'TwoFactorAuthentication', 'enforced' ); # Make sure the send won't fail because of invalid email addresses $patron->library->set( @@ -344,7 +344,7 @@ SKIP: { END { $_->delete for @data_to_cleanup; - C4::Context->set_preference('TwoFactorAuthentication', $pref_value); + Koha::Config::SysPrefs->set_preference('TwoFactorAuthentication', $pref_value); }; diff --git a/t/db_dependent/selenium/patrons_search.t b/t/db_dependent/selenium/patrons_search.t index 928e64f36f..18c57657a2 100755 --- a/t/db_dependent/selenium/patrons_search.t +++ b/t/db_dependent/selenium/patrons_search.t @@ -26,10 +26,10 @@ our $DT_delay = 1; END { unless ( @cleanup ) { say "WARNING: Cleanup failed!" } - C4::Context->set_preference( 'dateformat', $original_dateformat ); - C4::Context->set_preference( 'DefaultPatronSearchFields', $original_DefaultPatronSearchFields ); - C4::Context->set_preference( 'DefaultPatronSearchMethod', $original_DefaultPatronSearchMethod ); - C4::Context->set_preference( 'PatronsPerPage', $original_PatronsPerPage ); + Koha::Config::SysPrefs->set_preference( 'dateformat', $original_dateformat ); + Koha::Config::SysPrefs->set_preference( 'DefaultPatronSearchFields', $original_DefaultPatronSearchFields ); + Koha::Config::SysPrefs->set_preference( 'DefaultPatronSearchMethod', $original_DefaultPatronSearchMethod ); + Koha::Config::SysPrefs->set_preference( 'PatronsPerPage', $original_PatronsPerPage ); $_->delete for @cleanup; }; @@ -187,12 +187,11 @@ subtest 'Search patrons' => sub { my $table_id = "memberresultst"; $s->auth; - C4::Context->set_preference('DefaultPatronSearchFields',""); - C4::Context->set_preference('DefaultPatronSearchMethod',"contains"); - my $searchable_attributes = Koha::Patron::Attribute::Types->search({ staff_searchable => 1 })->count(); + Koha::Config::SysPrefs->set_preference('DefaultPatronSearchFields',""); + Koha::Config::SysPrefs->set_preference('DefaultPatronSearchMethod',"contains"); my $PatronsPerPage = 15; - my $nb_standard_fields = 13 + $searchable_attributes; # Standard fields, plus one searchable attribute - C4::Context->set_preference('PatronsPerPage', $PatronsPerPage); + my $nb_standard_fields = 13; + Koha::Config::SysPrefs->set_preference('PatronsPerPage', $PatronsPerPage); $driver->get( $base_url . "/members/members-home.pl" ); my @adv_options = $driver->find_elements('//select[@id="searchfieldstype"]/option'); is( scalar @adv_options, $nb_standard_fields + 1, 'All standard fields are searchable if DefaultPatronSearchFields not set. middle_name is there.'); @@ -200,7 +199,7 @@ subtest 'Search patrons' => sub { my @filter_options = $driver->find_elements('//select[@id="searchfieldstype_filter"]/option'); is( scalar @filter_options, $nb_standard_fields + 1, 'All standard fields + middle_name are searchable by filter if DefaultPatronSearchFields not set'); is( $filter_options[0]->get_value(), 'standard', 'Standard filter uses hard coded value "standard" DefaultPatronSearchFields not set'); - C4::Context->set_preference('DefaultPatronSearchFields',"firstname|initials"); + Koha::Config::SysPrefs->set_preference('DefaultPatronSearchFields',"firstname|initials"); $driver->get( $base_url . "/members/members-home.pl" ); @adv_options = $driver->find_elements('//select[@id="searchfieldstype"]/option'); is( scalar @adv_options, $nb_standard_fields, 'New option added when DefaultPatronSearchFields is populated with a field. Note that middle_name disappears, we do not want it if not part of DefaultPatronSearchFields'); @@ -208,6 +207,7 @@ subtest 'Search patrons' => sub { @filter_options = $driver->find_elements('//select[@id="searchfieldstype_filter"]/option'); is( scalar @filter_options, $nb_standard_fields, 'New filter option added when DefaultPatronSearchFields is populated with a field'); is( $filter_options[0]->get_value(), 'standard', 'Standard filter uses value "standard"'); + Koha::Config::SysPrefs->set_preference('DefaultPatronSearchFields',"firstname|initials|horses"); $driver->get( $base_url . "/members/members-home.pl" ); @adv_options = $driver->find_elements('//select[@id="searchfieldstype"]/option'); @filter_options = $driver->find_elements('//select[@id="searchfieldstype_filter"]/option'); @@ -215,7 +215,7 @@ subtest 'Search patrons' => sub { is( scalar @filter_options, $nb_standard_fields, 'Invalid filter option not added when DefaultPatronSearchFields is populated with an invalid field'); # NOTE: We should probably ensure the bad field is removed from 'standard' search here, else searches are broken - C4::Context->set_preference('DefaultPatronSearchFields',""); + Koha::Config::SysPrefs->set_preference('DefaultPatronSearchFields',""); $driver->get( $base_url . "/members/members-home.pl" ); $s->fill_form( { search_patron_filter => 'test_patron' } ); $s->submit_form; @@ -328,7 +328,7 @@ subtest 'Search patrons' => sub { plan tests => 7; - C4::Context->set_preference( 'PatronsPerPage', 5 ); + Koha::Config::SysPrefs->set_preference( 'PatronsPerPage', 5 ); $driver->get( $base_url . "/members/members-home.pl" ); $s->fill_form( { search_patron_filter => 'test_patron' } ); $s->submit_form; @@ -378,7 +378,7 @@ subtest 'Search patrons' => sub { subtest 'filter by date of birth' => sub { plan tests => 7; - C4::Context->set_preference( 'dateformat', 'metric' ); + Koha::Config::SysPrefs->set_preference( 'dateformat', 'metric' ); # We have a patron with date of birth=1980-06-17 => formatted as 17/06/1980 diff --git a/t/db_dependent/selenium/regressions.t b/t/db_dependent/selenium/regressions.t index b9e9cb2edf..71b17dba1d 100755 --- a/t/db_dependent/selenium/regressions.t +++ b/t/db_dependent/selenium/regressions.t @@ -48,10 +48,10 @@ my $builder = t::lib::TestBuilder->new; # It seems that we do not have enough records indexed with ES my $SearchEngine_value = C4::Context->preference('SearchEngine'); -C4::Context->set_preference('SearchEngine', 'Zebra'); +Koha::Config::SysPrefs->set_preference('SearchEngine', 'Zebra'); my $AudioAlerts_value = C4::Context->preference('AudioAlerts'); -C4::Context->set_preference('AudioAlerts', '1'); +Koha::Config::SysPrefs->set_preference('AudioAlerts', '1'); our @cleanup; subtest 'OPAC - borrowernumber, branchcode and categorycode as html attributes' => sub { @@ -279,7 +279,7 @@ subtest 'Encoding in session variables' => sub { my $original_SessionStorage = C4::Context->preference('SessionStorage'); for my $SessionStorage ( qw( memcached mysql tmp ) ) { - C4::Context->set_preference( 'SessionStorage', $SessionStorage ); + Koha::Config::SysPrefs->set_preference( 'SessionStorage', $SessionStorage ); for my $branchname (qw( Test1 Test2❤️ Test3ä )) { my $library = Koha::Libraries->find($branchname) || $builder->build_object( @@ -333,7 +333,7 @@ subtest 'Encoding in session variables' => sub { } } - C4::Context->set_preference('SessionStorage', $original_SessionStorage); + Koha::Config::SysPrefs->set_preference('SessionStorage', $original_SessionStorage); push @cleanup, $item, $biblio, $patron, $patron->category, $patron->library; push @cleanup, Koha::Libraries->find($_) for qw( Test1 Test2❤️ Test3ä ); @@ -375,8 +375,8 @@ subtest 'OPAC - Suggest for purchase' => sub { $driver->quit(); END { - C4::Context->set_preference('SearchEngine', $SearchEngine_value); - C4::Context->set_preference('AudioAlerts', $AudioAlerts_value); + Koha::Config::SysPrefs->set_preference('SearchEngine', $SearchEngine_value); + Koha::Config::SysPrefs->set_preference('AudioAlerts', $AudioAlerts_value); $_->delete for @cleanup; }; diff --git a/t/db_dependent/selenium/remove_from_cart.t b/t/db_dependent/selenium/remove_from_cart.t index f477e99f63..6efdade130 100755 --- a/t/db_dependent/selenium/remove_from_cart.t +++ b/t/db_dependent/selenium/remove_from_cart.t @@ -46,7 +46,7 @@ my $builder = t::lib::TestBuilder->new; my $marcflavour = C4::Context->preference('marcflavour') || 'MARC21'; my $SearchEngine_value = C4::Context->preference('SearchEngine'); -C4::Context->set_preference('SearchEngine', 'Zebra'); +Koha::Config::SysPrefs->set_preference('SearchEngine', 'Zebra'); my $mock_zebra = t::lib::Mocks::Zebra->new( { @@ -104,6 +104,6 @@ subtest 'OPAC - Remove from cart' => sub { }; END { - C4::Context->set_preference('SearchEngine', $SearchEngine_value); + Koha::Config::SysPrefs->set_preference('SearchEngine', $SearchEngine_value); $mock_zebra->cleanup if $mock_zebra; }; diff --git a/t/db_dependent/selenium/self_registration.t b/t/db_dependent/selenium/self_registration.t index 3a1b0e7929..f665a26822 100755 --- a/t/db_dependent/selenium/self_registration.t +++ b/t/db_dependent/selenium/self_registration.t @@ -43,7 +43,7 @@ my $opac_base_url = $s->opac_base_url; my $builder = t::lib::TestBuilder->new; my $PatronSelfRegistration_value = C4::Context->preference('PatronSelfRegistration'); -C4::Context->set_preference('PatronSelfRegistration', '1'); +Koha::Config::SysPrefs->set_preference('PatronSelfRegistration', '1'); my $PatronSelfRegistrationDefaultCategory_value = C4::Context->preference('PatronSelfRegistrationDefaultCategory'); @@ -60,7 +60,7 @@ subtest 'Set flags' => sub { plan tests => 2; my $default_category = $builder->build_object( { class => 'Koha::Patron::Categories' } ); - C4::Context->set_preference( 'PatronSelfRegistrationDefaultCategory', $default_category->categorycode ); + Koha::Config::SysPrefs->set_preference( 'PatronSelfRegistrationDefaultCategory', $default_category->categorycode ); $driver->get($opac_base_url . 'opac-memberentry.pl'); like( $driver->get_title(), qr(Register a new account), ); @@ -83,7 +83,7 @@ subtest 'Set flags' => sub { $driver->quit(); END { - C4::Context->set_preference('PatronSelfRegistration', $PatronSelfRegistration_value); - C4::Context->set_preference('PatronSelfRegistration', $PatronSelfRegistrationDefaultCategory_value); + Koha::Config::SysPrefs->set_preference('PatronSelfRegistration', $PatronSelfRegistration_value); + Koha::Config::SysPrefs->set_preference('PatronSelfRegistration', $PatronSelfRegistrationDefaultCategory_value); $_->delete for @cleanup; }; diff --git a/t/db_dependent/sysprefs.t b/t/db_dependent/sysprefs.t index f43f8e3d66..89947fb0d0 100755 --- a/t/db_dependent/sysprefs.t +++ b/t/db_dependent/sysprefs.t @@ -22,6 +22,7 @@ use Modern::Perl; use Test::More tests => 8; use C4::Context; use Koha::Database; +use Koha::Config::SysPrefs; my $schema = Koha::Database->new->schema; $schema->storage->txn_begin; @@ -30,10 +31,10 @@ my $dbh = C4::Context->dbh; my $URLLinkText = C4::Context->preference('URLLinkText'); my $newURLLinkText = "newURLLinkText"; -C4::Context->set_preference( 'URLLINKTEXT', $newURLLinkText ); +Koha::Config::SysPrefs->set_preference( 'URLLINKTEXT', $newURLLinkText ); is( C4::Context->preference('URLLinkText'), $newURLLinkText, 'The pref should have been set correctly' ); -C4::Context->set_preference( 'URLLinkText', $URLLinkText ); +Koha::Config::SysPrefs->set_preference( 'URLLinkText', $URLLinkText ); is( C4::Context->preference('URLLINKTEXT'), $URLLinkText, 'A pref name should be case insensitive'); $ENV{OVERRIDE_SYSPREF_URLLinkText} = 'this is an override'; @@ -46,14 +47,14 @@ is( is( C4::Context->preference('IDoNotExist'), undef, 'Get a non-existent system preference should return undef'); -C4::Context->set_preference( 'IDoNotExist', 'NonExistent' ); +Koha::Config::SysPrefs->set_preference( 'IDoNotExist', 'NonExistent' ); is( C4::Context->preference('IDoNotExist'), 'NonExistent', 'Test creation of non-existent system preference' ); -C4::Context->set_preference('testpreference', 'abc'); -C4::Context->delete_preference('testpreference'); +Koha::Config::SysPrefs->set_preference('testpreference', 'abc'); +Koha::Config::SysPrefs->delete_preference('testpreference'); is(C4::Context->preference('testpreference'), undef, 'deleting preferences'); -C4::Context->set_preference('testpreference', 'def'); +Koha::Config::SysPrefs->set_preference('testpreference', 'def'); # Delete from the database, it should still be in cache $dbh->do("DELETE FROM systempreferences WHERE variable='testpreference'"); is(C4::Context->preference('testpreference'), 'def', 'caching preferences'); diff --git a/t/db_dependent/www/regressions.t b/t/db_dependent/www/regressions.t index 8b9c77b07b..fbaad0db4b 100755 --- a/t/db_dependent/www/regressions.t +++ b/t/db_dependent/www/regressions.t @@ -97,7 +97,7 @@ subtest 'open redirection vulnerabilities in tracklinks' => sub { Koha::Caches->flush_L1_caches; # Don't Track - C4::Context->set_preference( 'TrackClicks', '' ); + Koha::Config::SysPrefs->set_preference( 'TrackClicks', '' ); $t->get_ok( $opac . $no_biblionumber ) ->status_is( 404, "404 for no biblionumber" ); $t->get_ok( $opac . $bad_biblionumber1 ) @@ -112,7 +112,7 @@ subtest 'open redirection vulnerabilities in tracklinks' => sub { ->status_is( 404, "404 for itemnumber with matching URI - pref off" ); # Track - C4::Context->set_preference( 'TrackClicks', 'track' ); + Koha::Config::SysPrefs->set_preference( 'TrackClicks', 'track' ); $t->get_ok( $opac . $no_biblionumber ) ->status_is( 404, "404 for no biblionumber" ); $t->get_ok( $opac . $bad_biblionumber1 ) @@ -127,7 +127,7 @@ subtest 'open redirection vulnerabilities in tracklinks' => sub { ->status_is( 302, "302 for itemnumber with matching URI" ); # Track Anonymous - C4::Context->set_preference( 'TrackClicks', 'anonymous' ); + Koha::Config::SysPrefs->set_preference( 'TrackClicks', 'anonymous' ); $t->get_ok( $opac . $no_biblionumber ) ->status_is( 404, "404 for no biblionumber" ); $t->get_ok( $opac . $bad_biblionumber1 ) -- 2.34.1