From 327fd5ac93f58d92112dd723acd76fc9031a4b18 Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Fri, 25 Jun 2021 11:49:06 -0300 Subject: [PATCH] Bug 28585: (follow-up) Tests for q= supporting date/date-time parameters Signed-off-by: Tomas Cohen Arazi Signed-off-by: David Nind Signed-off-by: Kyle M Hall Signed-off-by: Martin Renvoize --- t/db_dependent/api/v1/patrons.t | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/t/db_dependent/api/v1/patrons.t b/t/db_dependent/api/v1/patrons.t index 8d092a8954..d8dc2ff608 100755 --- a/t/db_dependent/api/v1/patrons.t +++ b/t/db_dependent/api/v1/patrons.t @@ -34,6 +34,8 @@ use Koha::Exceptions::Patron::Attribute; use Koha::Patron::Attributes; use Koha::Patron::Debarments qw/AddDebarment/; +use JSON qw(encode_json); + my $schema = Koha::Database->new->schema; my $builder = t::lib::TestBuilder->new; @@ -88,7 +90,7 @@ subtest 'list() tests' => sub { subtest 'searching date and date-time fields' => sub { - plan tests => 6; + plan tests => 12; my $date_of_birth = '1980-06-18'; my $last_seen = '2021-06-25 14:05:35'; @@ -112,6 +114,28 @@ subtest 'list() tests' => sub { $t->get_ok("//$userid:$password@/api/v1/patrons?last_seen=" . $last_seen_rfc3339 . "&cardnumber=" . $patron->cardnumber) ->status_is(200) ->json_is( '/0/patron_id' => $patron->id, 'Filtering by date-time works' ); + + my $q = encode_json( + { + date_of_birth => $date_of_birth, + cardnumber => $patron->cardnumber, + } + ); + + $t->get_ok("//$userid:$password@/api/v1/patrons?q=$q") + ->status_is(200) + ->json_is( '/0/patron_id' => $patron->id, 'Filtering by date works' ); + + $q = encode_json( + { + last_seen => $last_seen_rfc3339, + cardnumber => $patron->cardnumber, + } + ); + + $t->get_ok("//$userid:$password@/api/v1/patrons?q=$q") + ->status_is(200) + ->json_is( '/0/patron_id' => $patron->id, 'Filtering by date-time works' ); }; $schema->storage->txn_rollback; -- 2.20.1