Bug 28630: Improve date comparisons in tests

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:
Jonathan Druart 2021-08-04 11:12:41 +02:00 committed by Kyle M Hall
parent 6d752bbf08
commit 72213935f3

View file

@ -23,6 +23,7 @@ use Test::More tests => 10;
use Test::MockModule;
use t::lib::Mocks;
use t::lib::TestBuilder;
use t::lib::Dates;
use C4::Items qw( ModItemTransfer );
use C4::Circulation;
@ -58,7 +59,7 @@ subtest 'AuthenticatePatron test' => sub {
value => {
cardnumber => undef,
password => Koha::AuthUtils::hash_password( $plain_password ),
lastseen => "2001-01-01"
lastseen => "2001-01-01 12:34:56"
}
});
@ -71,7 +72,7 @@ subtest 'AuthenticatePatron test' => sub {
is( $reply->{id}, $borrower->{borrowernumber}, "userid and password - Patron authenticated" );
is( $reply->{code}, undef, "Error code undef");
my $seen_patron = Koha::Patrons->find({ borrowernumber => $reply->{id} });
is( output_pref({str => $seen_patron->lastseen(), dateonly => 1}), output_pref({str => '2001-01-01', dateonly => 1}),'Last seen not updated if not tracking patrons');
is( $seen_patron->lastseen(), '2001-01-01 12:34:56','Last seen not updated if not tracking patrons');
$query->param('password','ilsdi-passworD');
$reply = C4::ILSDI::Services::AuthenticatePatron( $query );
@ -87,10 +88,11 @@ subtest 'AuthenticatePatron test' => sub {
t::lib::Mocks::mock_preference( 'TrackLastPatronActivity', '1' );
$query->param( 'username', uc( $borrower->{userid} ));
$reply = C4::ILSDI::Services::AuthenticatePatron( $query );
my $now = dt_from_string;
is( $reply->{id}, $borrower->{borrowernumber}, "userid is not case sensitive - Patron authenticated" );
is( $reply->{code}, undef, "Error code undef");
$seen_patron = Koha::Patrons->find({ borrowernumber => $reply->{id} });
is( output_pref({str => $seen_patron->lastseen(), dateonly => 1}), output_pref({dt => dt_from_string(), dateonly => 1}),'Last seen updated to today if tracking patrons');
is( t::lib::Dates::compare( $seen_patron->lastseen, $now), 0, 'Last seen updated to today if tracking patrons' );
$query->param( 'username', $borrower->{cardnumber} );
$reply = C4::ILSDI::Services::AuthenticatePatron( $query );