From a0c40c286cb10c745a353d03a8250f0dbc202408 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 --- 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 78ec764422..441120f23a 100755 --- a/t/db_dependent/api/v1/patrons.t +++ b/t/db_dependent/api/v1/patrons.t @@ -33,6 +33,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; @@ -87,7 +89,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'; @@ -111,6 +113,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.32.0