Bugzilla – Attachment 101802 Details for
Bug 24840
Datetime issues in automatic_renewals / CanBookBeReserved
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 24840: Replace DateTime->now with dt_from_string
Bug-24840-Replace-DateTime-now-with-dtfromstring.patch (text/plain), 24.09 KB, created by
Nick Clemens (kidclamp)
on 2020-03-26 11:10:24 UTC
(
hide
)
Description:
Bug 24840: Replace DateTime->now with dt_from_string
Filename:
MIME Type:
Creator:
Nick Clemens (kidclamp)
Created:
2020-03-26 11:10:24 UTC
Size:
24.09 KB
patch
obsolete
>From b9860b34836781ada64b438217bb8cd033769c97 Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Thu, 26 Mar 2020 11:05:32 +0000 >Subject: [PATCH] Bug 24840: Replace DateTime->now with dt_from_string > >We should use Koha::DateUtils instead of Date::Time directly > >This patch simplay replaces calls to now() with a call to dt_from_string() >which does effectively the same thing. > >Probably reading the code and verifying changes is sufficient but... > >To test: >1 - confirm the files all compile >2 - confirm all tests pass >3 - confirm Koha still works >--- > C4/Circulation.pm | 20 +++++++++----------- > C4/Letters.pm | 2 +- > C4/MarcModificationTemplates.pm | 3 ++- > Koha/Calendar.pm | 2 +- > Koha/Checkout.pm | 3 ++- > Koha/Checkouts.pm | 3 ++- > Koha/EDI.pm | 5 +++-- > Koha/Edifact/Order.pm | 3 ++- > Koha/Edifact/Transport.pm | 3 ++- > Koha/Patron/Password/Recovery.pm | 3 ++- > Koha/Sitemapper/Writer.pm | 4 ++-- > circ/overdue.pl | 2 +- > circ/returns.pl | 6 +++--- > .../mysql/fix_unclosed_nonaccruing_fines_bug17135.pl | 2 +- > installer/data/mysql/updatedatabase.pl | 2 +- > members/summary-print.pl | 3 ++- > misc/cronjobs/fines.pl | 2 +- > misc/cronjobs/overdue_notices.pl | 4 ++-- > opac/opac-ics.pl | 2 +- > t/Circulation/AgeRestrictionMarkers.t | 5 +++-- > t/db_dependent/DecreaseLoanHighHolds.t | 5 +++-- > t/db_dependent/Letters/TemplateToolkit.t | 2 +- > t/db_dependent/OAI/Server.t | 2 +- > t/db_dependent/Passwordrecovery.t | 11 ++++++----- > t/db_dependent/Sitemapper.t | 3 ++- > 25 files changed, 56 insertions(+), 46 deletions(-) > >diff --git a/C4/Circulation.pm b/C4/Circulation.pm >index c6f3cf9d75..b7f36c8018 100644 >--- a/C4/Circulation.pm >+++ b/C4/Circulation.pm >@@ -705,7 +705,7 @@ sub CanBookBeIssued { > if ($duedate && ref $duedate ne 'DateTime') { > $duedate = dt_from_string($duedate); > } >- my $now = DateTime->now( time_zone => C4::Context->tz() ); >+ my $now = dt_from_string(); > unless ( $duedate ) { > my $issuedate = $now->clone(); > >@@ -1236,7 +1236,7 @@ sub checkHighHolds { > } > } > >- my $issuedate = DateTime->now( time_zone => C4::Context->tz() ); >+ my $issuedate = dt_from_string(); > > my $calendar = Koha::Calendar->new( branchcode => $branchcode ); > >@@ -1315,7 +1315,7 @@ sub AddIssue { > > # $issuedate defaults to today. > if ( !defined $issuedate ) { >- $issuedate = DateTime->now( time_zone => C4::Context->tz() ); >+ $issuedate = dt_from_string(); > } > else { > if ( ref $issuedate ne 'DateTime' ) { >@@ -1466,7 +1466,7 @@ sub AddIssue { > $item_object->holdingbranch(C4::Context->userenv->{'branch'}); > $item_object->itemlost(0); > $item_object->onloan($datedue->ymd()); >- $item_object->datelastborrowed(DateTime->now( time_zone => C4::Context->tz() )->ymd()); # FIXME we should use dt_from_string here >+ $item_object->datelastborrowed( dt_from_string()->ymd() ); > $item_object->store({log_action => 0}); > ModDateLastSeen( $item_object->itemnumber ); > >@@ -2805,7 +2805,7 @@ sub CanBookBeRenewed { > $soonestrenewal->truncate( to => 'day' ); > } > >- if ( $soonestrenewal > DateTime->now( time_zone => C4::Context->tz() ) ) >+ if ( $soonestrenewal > dt_from_string() ) > { > return ( 0, "auto_too_soon" ) if $issue->auto_renew && $patron->autorenew_checkouts; > return ( 0, "too_soon" ); >@@ -2932,7 +2932,7 @@ sub AddRenewal { > my $itemnumber = shift or return; > my $branch = shift; > my $datedue = shift; >- my $lastreneweddate = shift || DateTime->now(time_zone => C4::Context->tz); >+ my $lastreneweddate = shift || dt_from_string(); > my $skipfinecalc = shift; > > my $item_object = Koha::Items->find($itemnumber) or return; >@@ -2972,7 +2972,7 @@ sub AddRenewal { > > $datedue = (C4::Context->preference('RenewalPeriodBase') eq 'date_due') ? > dt_from_string( $issue->date_due, 'sql' ) : >- DateTime->now( time_zone => C4::Context->tz()); >+ dt_from_string(); > $datedue = CalcDateDue($datedue, $itemtype, $circ_library->branchcode, $patron_unblessed, 'is a renewal'); > } > >@@ -3595,9 +3595,7 @@ sub CalcDateDue { > $datedue = $startdate->clone; > } > } else { >- $datedue = >- DateTime->now( time_zone => C4::Context->tz() ) >- ->truncate( to => 'minute' ); >+ $datedue = dt_from_string()->truncate( to => 'minute' ); > } > > >@@ -4081,7 +4079,7 @@ sub GetAgeRestriction { > } > > #Get how many days the borrower has to reach the age restriction >- my @Today = split /-/, DateTime->today->ymd(); >+ my @Today = split /-/, dt_from_string()->ymd(); > my $daysToAgeRestriction = Date_to_Days(@alloweddate) - Date_to_Days(@Today); > #Negative days means the borrower went past the age restriction age > return ($restriction_year, $daysToAgeRestriction); >diff --git a/C4/Letters.pm b/C4/Letters.pm >index 9e583cd5ae..a3c64520f1 100644 >--- a/C4/Letters.pm >+++ b/C4/Letters.pm >@@ -796,7 +796,7 @@ sub _parseletter { > } > > if ($letter->{content} && $letter->{content} =~ /<<today>>/) { >- my $todaysdate = output_pref( DateTime->now() ); >+ my $todaysdate = output_pref( dt_from_string() ); > $letter->{content} =~ s/<<today>>/$todaysdate/go; > } > >diff --git a/C4/MarcModificationTemplates.pm b/C4/MarcModificationTemplates.pm >index 54846e5956..5ed2f94ae0 100644 >--- a/C4/MarcModificationTemplates.pm >+++ b/C4/MarcModificationTemplates.pm >@@ -24,6 +24,7 @@ use DateTime; > use C4::Context; > use Koha::SimpleMARC; > use Koha::MoreUtils; >+use Koha::DateUtils; > > use vars qw(@ISA @EXPORT); > >@@ -501,7 +502,7 @@ sub ModifyRecordWithTemplate { > warn( "C4::MarcModificationTemplates::ModifyRecordWithTemplate( $template_id, $record )" ) if DEBUG; > warn( "Unmodified Record:\n" . $record->as_formatted() ) if DEBUG >= 10; > >- my $current_date = DateTime->now()->ymd(); >+ my $current_date = dt_from_string()->ymd(); > my $branchcode = ''; > $branchcode = C4::Context->userenv->{branch} if C4::Context->userenv; > >diff --git a/Koha/Calendar.pm b/Koha/Calendar.pm >index dfc358d240..ef397cd838 100644 >--- a/Koha/Calendar.pm >+++ b/Koha/Calendar.pm >@@ -410,7 +410,7 @@ Koha::Calendar - Object containing a branches calendar > use Koha::Calendar > > my $c = Koha::Calendar->new( branchcode => 'MAIN' ); >- my $dt = DateTime->now(); >+ my $dt = dt_from_string(); > > # are we open > $open = $c->is_holiday($dt); >diff --git a/Koha/Checkout.pm b/Koha/Checkout.pm >index e256b6c051..9180bf4df7 100644 >--- a/Koha/Checkout.pm >+++ b/Koha/Checkout.pm >@@ -54,7 +54,8 @@ will be the reference date. > > sub is_overdue { > my ( $self, $dt ) = @_; >- $dt ||= DateTime->now( time_zone => C4::Context->tz ); >+ $dt ||= dt_from_string(); >+ > my $is_overdue = > DateTime->compare( dt_from_string( $self->date_due, 'sql' ), $dt ) == -1 > ? 1 >diff --git a/Koha/Checkouts.pm b/Koha/Checkouts.pm >index ccfeb36e10..84d4253e72 100644 >--- a/Koha/Checkouts.pm >+++ b/Koha/Checkouts.pm >@@ -24,6 +24,7 @@ use Carp; > use C4::Context; > use Koha::Checkout; > use Koha::Database; >+use Koha::DateUtils; > > use base qw(Koha::Objects); > >@@ -48,7 +49,7 @@ sub calculate_dropbox_date { > my $branchcode = $userenv->{branch} // q{}; > > my $calendar = Koha::Calendar->new( branchcode => $branchcode ); >- my $today = DateTime->now( time_zone => C4::Context->tz() ); >+ my $today = dt_from_string(); > my $dropbox_date = $calendar->addDate( $today, -1 ); > > return $dropbox_date; >diff --git a/Koha/EDI.pm b/Koha/EDI.pm >index 5bf0197184..a692da146b 100644 >--- a/Koha/EDI.pm >+++ b/Koha/EDI.pm >@@ -27,6 +27,7 @@ use Business::ISBN; > use DateTime; > use C4::Context; > use Koha::Database; >+use Koha::DateUtils; > use C4::Acquisition qw( NewBasket CloseBasket ModOrder); > use C4::Suggestions qw( ModSuggestion ); > use C4::Biblio qw( AddBiblio TransformKohaToMarc GetMarcBiblio GetFrameworkCode GetMarcFromKohaField ); >@@ -174,7 +175,7 @@ sub process_ordrsp { > ordernumber => $ordernumber, > cancellationreason => $reason, > orderstatus => 'cancelled', >- datecancellationprinted => DateTime->now()->ymd(), >+ datecancellationprinted => dt_from_string()->ymd(), > } > ); > } >@@ -624,7 +625,7 @@ sub quote_item { > # database definitions should set some of these defaults but dont > my $order_hash = { > biblionumber => $bib->{biblionumber}, >- entrydate => DateTime->now( time_zone => 'local' )->ymd(), >+ entrydate => dt_from_string()->ymd(), > basketno => $basketno, > listprice => $item->price, > quantity => $order_quantity, >diff --git a/Koha/Edifact/Order.pm b/Koha/Edifact/Order.pm >index 5dbe1e047f..b5434872ae 100644 >--- a/Koha/Edifact/Order.pm >+++ b/Koha/Edifact/Order.pm >@@ -26,6 +26,7 @@ use DateTime; > use Readonly; > use Business::ISBN; > use Koha::Database; >+use Koha::DateUtils; > use C4::Budgets qw( GetBudget ); > > use Koha::Acquisition::Orders; >@@ -51,7 +52,7 @@ sub new { > > # convenient alias > $self->{basket} = $self->{orderlines}->[0]->basketno; >- $self->{message_date} = DateTime->now( time_zone => 'local' ); >+ $self->{message_date} = dt_from_string(); > } > > # validate that its worth proceeding >diff --git a/Koha/Edifact/Transport.pm b/Koha/Edifact/Transport.pm >index a64d583776..e52b6ef468 100644 >--- a/Koha/Edifact/Transport.pm >+++ b/Koha/Edifact/Transport.pm >@@ -29,6 +29,7 @@ use File::Slurp; > use File::Copy; > use File::Basename qw( fileparse ); > use Koha::Database; >+use Koha::DateUtils; > use Encode qw( from_to ); > > sub new { >@@ -40,7 +41,7 @@ sub new { > account => $acct, > schema => $schema, > working_dir => C4::Context::temporary_directory, #temporary work directory >- transfer_date => DateTime->now( time_zone => 'local' ), >+ transfer_date => dt_from_string(), > }; > > bless $self, $class; >diff --git a/Koha/Patron/Password/Recovery.pm b/Koha/Patron/Password/Recovery.pm >index 0d09923bf1..664035481d 100644 >--- a/Koha/Patron/Password/Recovery.pm >+++ b/Koha/Patron/Password/Recovery.pm >@@ -21,6 +21,7 @@ use Modern::Perl; > use C4::Context; > use C4::Letters; > use Crypt::Eksblowfish::Bcrypt qw(en_base64); >+use Koha::DateUtils; > > use vars qw(@ISA @EXPORT); > >@@ -115,7 +116,7 @@ sub SendPasswordRecoveryEmail { > > # insert into database > my $expirydate = >- DateTime->now( time_zone => C4::Context->tz() )->add( days => 2 ); >+ dt_from_string()->add( days => 2 ); > if ($update) { > my $rs = > $schema->resultset('BorrowerPasswordRecovery') >diff --git a/Koha/Sitemapper/Writer.pm b/Koha/Sitemapper/Writer.pm >index 99f2a59688..63f147aff8 100644 >--- a/Koha/Sitemapper/Writer.pm >+++ b/Koha/Sitemapper/Writer.pm >@@ -23,7 +23,7 @@ use Moo; > use Modern::Perl; > use XML::Writer; > use IO::File; >-use DateTime; >+use Koha::DateUtils; > > > my $MAX = 50000; >@@ -106,7 +106,7 @@ sub end { > > my $w = $self->_writer_create("sitemapindex.xml"); > $w->startTag('sitemapindex', 'xmlns' => 'http://www.sitemaps.org/schemas/sitemap/0.9'); >- my $now = DateTime->now()->ymd; >+ my $now = dt_from_string()->ymd; > for my $i ( 1..$self->count ) { > $w->startTag('sitemap'); > $w->startTag('loc'); >diff --git a/circ/overdue.pl b/circ/overdue.pl >index a61a795a71..ac5fc1e70e 100755 >--- a/circ/overdue.pl >+++ b/circ/overdue.pl >@@ -214,7 +214,7 @@ if ($noreport) { > # FIX 2: ensure there are indexes for columns participating in the WHERE clauses, where feasible/reasonable > > >- my $today_dt = DateTime->now(time_zone => C4::Context->tz); >+ my $today_dt = dt_from_string(); > $today_dt->truncate(to => 'minute'); > my $todaysdate = $today_dt->strftime('%Y-%m-%d %H:%M'); > >diff --git a/circ/returns.pl b/circ/returns.pl >index 456d0d1195..f0e4abe9fc 100755 >--- a/circ/returns.pl >+++ b/circ/returns.pl >@@ -302,7 +302,7 @@ if ($barcode) { > AddReturn( $barcode, $userenv_branch, $exemptfine, $return_date ); > > if ($returned) { >- my $time_now = DateTime->now( time_zone => C4::Context->tz )->truncate( to => 'minute'); >+ my $time_now = dt_from_string()->truncate( to => 'minute'); > my $date_due_dt = dt_from_string( $issue->date_due, 'sql' ); > my $duedate = $date_due_dt->strftime('%Y-%m-%d %H:%M'); > $returneditems{0} = $barcode; >@@ -311,7 +311,7 @@ if ($barcode) { > $input{borrowernumber} = $borrower->{'borrowernumber'}; > $input{duedate} = $duedate; > unless ( $dropboxmode ) { >- $input{return_overdue} = 1 if (DateTime->compare($date_due_dt, DateTime->now()) == -1); >+ $input{return_overdue} = 1 if (DateTime->compare($date_due_dt, dt_from_string()) == -1); > } else { > $input{return_overdue} = 1 if (DateTime->compare($date_due_dt, $dropboxdate) == -1); > } >@@ -569,7 +569,7 @@ foreach ( sort { $a <=> $b } keys %returneditems ) { > $ri{duedate} = output_pref($duedate); > my $patron = Koha::Patrons->find( $riborrowernumber{$_} ); > unless ( $dropboxmode ) { >- $ri{return_overdue} = 1 if (DateTime->compare($duedate, DateTime->now()) == -1); >+ $ri{return_overdue} = 1 if (DateTime->compare($duedate, dt_from_string()) == -1); > } else { > $ri{return_overdue} = 1 if (DateTime->compare($duedate, $dropboxdate) == -1); > } >diff --git a/installer/data/mysql/fix_unclosed_nonaccruing_fines_bug17135.pl b/installer/data/mysql/fix_unclosed_nonaccruing_fines_bug17135.pl >index d29b436ea2..b3e4b06f37 100755 >--- a/installer/data/mysql/fix_unclosed_nonaccruing_fines_bug17135.pl >+++ b/installer/data/mysql/fix_unclosed_nonaccruing_fines_bug17135.pl >@@ -77,7 +77,7 @@ sub Bug_17135_fix { > > my $control = C4::Context->preference('CircControl'); > my $mode = C4::Context->preference('finesMode'); >- my $today = DateTime->now( time_zone => C4::Context->tz() ); >+ my $today = dt_from_string(); > my $dbh = C4::Context->dbh; > > ## fetch the unclosed FU fines linked to the issues by issue_id >diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl >index 8a7c08b70e..5f5f620fba 100755 >--- a/installer/data/mysql/updatedatabase.pl >+++ b/installer/data/mysql/updatedatabase.pl >@@ -16262,7 +16262,7 @@ $DBversion = '18.06.00.016'; > if( CheckVersion( $DBversion ) ) { > my $dtf = Koha::Database->new->schema->storage->datetime_parser; > my $days = C4::Context->preference('MaxPickupDelay') || 7; >- my $date = DateTime->now()->add( days => $days ); >+ my $date = dt_from_string()->add( days => $days ); > my $sql = q|UPDATE reserves SET expirationdate = ? WHERE expirationdate IS NULL AND waitingdate IS NOT NULL|; > $dbh->do( $sql, undef, $dtf->format_datetime($date) ); > SetVersion( $DBversion ); >diff --git a/members/summary-print.pl b/members/summary-print.pl >index 50cf0a6a85..addb7fc9f0 100755 >--- a/members/summary-print.pl >+++ b/members/summary-print.pl >@@ -25,6 +25,7 @@ use C4::Members; > use C4::Circulation qw( GetIssuingCharges ); > use C4::Reserves; > use C4::Items; >+use Koha::DateUtils; > use Koha::Holds; > use Koha::ItemTypes; > use Koha::Patrons; >@@ -109,7 +110,7 @@ sub build_reserve_data { > > my $return = []; > >- my $today = DateTime->now( time_zone => C4::Context->tz ); >+ my $today = dt_from_string(); > $today->truncate( to => 'day' ); > > while ( my $reserve = $reserves->next() ) { >diff --git a/misc/cronjobs/fines.pl b/misc/cronjobs/fines.pl >index 0537f9758a..a5b920a880 100755 >--- a/misc/cronjobs/fines.pl >+++ b/misc/cronjobs/fines.pl >@@ -88,7 +88,7 @@ my $mode = C4::Context->preference('finesMode'); > my $delim = "\t"; # ? C4::Context->preference('delimiter') || "\t"; > > my %is_holiday; >-my $today = DateTime->now( time_zone => C4::Context->tz() ); >+my $today = dt_from_string(); > my $filename; > if ($log or $output_dir) { > $filename = get_filename($output_dir); >diff --git a/misc/cronjobs/overdue_notices.pl b/misc/cronjobs/overdue_notices.pl >index 26a365753d..d8fa4eef7d 100755 >--- a/misc/cronjobs/overdue_notices.pl >+++ b/misc/cronjobs/overdue_notices.pl >@@ -417,7 +417,7 @@ if ( defined $htmlfilename ) { > if ( $htmlfilename eq '' ) { > $fh = *STDOUT; > } else { >- my $today = DateTime->now(time_zone => C4::Context->tz ); >+ my $today = dt_from_string(); > open $fh, ">:encoding(UTF-8)",File::Spec->catdir ($htmlfilename,"notices-".$today->ymd().".html"); > } > >@@ -438,7 +438,7 @@ elsif ( defined $text_filename ) { > if ( $text_filename eq '' ) { > $fh = *STDOUT; > } else { >- my $today = DateTime->now(time_zone => C4::Context->tz ); >+ my $today = dt_from_string(); > open $fh, ">",File::Spec->catdir ($text_filename,"notices-".$today->ymd().".txt"); > } > } >diff --git a/opac/opac-ics.pl b/opac/opac-ics.pl >index 4069ce78ca..fb1ae4db68 100755 >--- a/opac/opac-ics.pl >+++ b/opac/opac-ics.pl >@@ -55,7 +55,7 @@ my $pending_checkouts = $patron->pending_checkouts; > while ( my $c = $pending_checkouts->next ) { > my $issue = $c->unblessed_all_relateds; > my $vevent = Data::ICal::Entry::Event->new(); >- my $timestamp = DateTime->now(); # Defaults to UTC >+ my $timestamp = dt_from_string(undef,undef,"UTC"); #Get current time in UTC > # Send some values to the template to generate summary and description > $issue->{overdue} = $c->is_overdue; > $template->param( >diff --git a/t/Circulation/AgeRestrictionMarkers.t b/t/Circulation/AgeRestrictionMarkers.t >index e6d335ee23..a67f53db3c 100644 >--- a/t/Circulation/AgeRestrictionMarkers.t >+++ b/t/Circulation/AgeRestrictionMarkers.t >@@ -21,6 +21,7 @@ > use Modern::Perl; > > use DateTime; >+use Koha::DateUtils; > use Test::More tests => 8; > use Test::Warn; > >@@ -39,7 +40,7 @@ is ( C4::Circulation::GetAgeRestriction('K16'), '16', 'K16 returns 16' ); > subtest 'Patron tests - 15 years old' => sub { > plan tests => 5; > ##Testing age restriction for a borrower. >- my $now = DateTime->now(); >+ my $now = dt_from_string(); > my $borrower = { dateofbirth => $now->add( years => -15 )->strftime("%Y-%m-%d") }; > TestPatron($borrower,0); > }; >@@ -56,7 +57,7 @@ subtest 'Patron tests - 15 years old (Time Zone shifts)' => sub { > Time::Fake->offset("+${offset}h"); > > ##Testing age restriction for a borrower. >- my $now = DateTime->now(); >+ my $now = dt_from_string(); > my $borrower = { dateofbirth => $now->add( years => -15 )->strftime("%Y-%m-%d") }; > TestPatron($borrower,$offset); > >diff --git a/t/db_dependent/DecreaseLoanHighHolds.t b/t/db_dependent/DecreaseLoanHighHolds.t >index 3337cfcf1c..25fe109ddd 100755 >--- a/t/db_dependent/DecreaseLoanHighHolds.t >+++ b/t/db_dependent/DecreaseLoanHighHolds.t >@@ -20,6 +20,7 @@ use DateTime; > > use C4::Circulation; > use Koha::Database; >+use Koha::DateUtils; > use Koha::Patrons; > use Koha::Biblio; > use Koha::Item; >@@ -39,7 +40,7 @@ my $builder = t::lib::TestBuilder->new; > $dbh->{RaiseError} = 1; > $schema->storage->txn_begin(); > >-my $now_value = DateTime->now(); >+my $now_value = dt_from_string(); > my $mocked_datetime = Test::MockModule->new('DateTime'); > $mocked_datetime->mock( 'now', sub { return $now_value->clone; } ); > >@@ -113,7 +114,7 @@ Koha::CirculationRules->set_rules( > > > my $orig_due = C4::Circulation::CalcDateDue( >- DateTime->now(time_zone => C4::Context->tz()), >+ dt_from_string(), > $item->effective_itemtype, > $patron->branchcode, > $patron->unblessed >diff --git a/t/db_dependent/Letters/TemplateToolkit.t b/t/db_dependent/Letters/TemplateToolkit.t >index 80415d62ca..a6ca5437b7 100644 >--- a/t/db_dependent/Letters/TemplateToolkit.t >+++ b/t/db_dependent/Letters/TemplateToolkit.t >@@ -58,7 +58,7 @@ $dbh->{RaiseError} = 1; > > $dbh->do(q|DELETE FROM letter|); > >-my $now_value = DateTime->now(); >+my $now_value = dt_from_string(); > my $mocked_datetime = Test::MockModule->new('DateTime'); > $mocked_datetime->mock( 'now', sub { return $now_value->clone; } ); > >diff --git a/t/db_dependent/OAI/Server.t b/t/db_dependent/OAI/Server.t >index d0bbfff76d..de6939f2f7 100644 >--- a/t/db_dependent/OAI/Server.t >+++ b/t/db_dependent/OAI/Server.t >@@ -72,7 +72,7 @@ $dbh->do('DELETE FROM oai_sets'); > > set_fixed_time(CORE::time()); > >-my $base_datetime = DateTime->now(); >+my $base_datetime = dt_from_string(); > my $date_added = $base_datetime->ymd . ' ' .$base_datetime->hms . 'Z'; > my $date_to = substr($date_added, 0, 10) . 'T23:59:59Z'; > my (@header, @marcxml, @oaidc); >diff --git a/t/db_dependent/Passwordrecovery.t b/t/db_dependent/Passwordrecovery.t >index 37f5ca9658..ccf567a689 100755 >--- a/t/db_dependent/Passwordrecovery.t >+++ b/t/db_dependent/Passwordrecovery.t >@@ -21,6 +21,7 @@ use C4::Context; > use Mail::Sendmail; > use C4::Letters; > use Koha::Database; >+use Koha::DateUtils; > use Koha::Patrons; > use t::lib::TestBuilder; > >@@ -115,21 +116,21 @@ $schema->resultset('BorrowerPasswordRecovery')->create( > { > borrowernumber => $borrowernumber1, > uuid => $uuid1, >- valid_until => DateTime->now( time_zone => C4::Context->tz() )->add( days => 2 )->datetime() >+ valid_until => dt_from_string()->add( days => 2 )->datetime() > } > ); > $schema->resultset('BorrowerPasswordRecovery')->create( > { > borrowernumber => $borrowernumber2, > uuid => $uuid2, >- valid_until => DateTime->now( time_zone => C4::Context->tz() )->subtract( days => 2 )->datetime() >+ valid_until => dt_from_string()->subtract( days => 2 )->datetime() > } > ); > $schema->resultset('BorrowerPasswordRecovery')->create( > { > borrowernumber => $borrowernumber3, > uuid => $uuid3, >- valid_until => DateTime->now( time_zone => C4::Context->tz() )->subtract( days => 3 )->datetime() >+ valid_until => dt_from_string()->subtract( days => 3 )->datetime() > } > ); > >@@ -167,7 +168,7 @@ $schema->resultset('BorrowerPasswordRecovery')->create( > { > borrowernumber => $borrowernumber2, > uuid => $uuid2, >- valid_until => DateTime->now( time_zone => C4::Context->tz() )->subtract( days => 2 )->datetime() >+ valid_until => dt_from_string()->subtract( days => 2 )->datetime() > } > ); > >@@ -182,7 +183,7 @@ $schema->resultset('BorrowerPasswordRecovery')->create( > { > borrowernumber => $borrowernumber3, > uuid => $uuid3, >- valid_until => DateTime->now( time_zone => C4::Context->tz() )->subtract( days => 3 )->datetime() >+ valid_until => dt_from_string()->subtract( days => 3 )->datetime() > } > ); > >diff --git a/t/db_dependent/Sitemapper.t b/t/db_dependent/Sitemapper.t >index 23ef9eb5d6..fe559c1308 100755 >--- a/t/db_dependent/Sitemapper.t >+++ b/t/db_dependent/Sitemapper.t >@@ -21,6 +21,7 @@ use Modern::Perl; > use File::Basename; > use File::Path; > use DateTime; >+use Koha::DateUtils; > use Test::MockModule; > use Test::More tests => 16; > use Carp qw/croak carp/; >@@ -31,7 +32,7 @@ BEGIN { > use_ok('Koha::Sitemapper::Writer'); > } > >-my $now_value = DateTime->now(); >+my $now_value = dt_from_string(); > my $mocked_datetime = Test::MockModule->new('DateTime'); > $mocked_datetime->mock( 'now', sub { return $now_value->clone; } ); > >-- >2.11.0
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 24840
:
101802
|
102542
|
102543
|
102550
|
102551
|
104438