@@ -, +, @@ C4::Utils::DT::Members --- C4/Utils/DataTables/Members.pm | 9 ++++++++- t/DataTables/Members.t | 14 ++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 t/DataTables/Members.t --- a/C4/Utils/DataTables/Members.pm +++ a/C4/Utils/DataTables/Members.pm @@ -91,7 +91,14 @@ sub search { $limit = "LIMIT $dt_params->{iDisplayStart},$dt_params->{iDisplayLength}"; } - my $query = join(" ", $select, $from, $where, $orderby, $limit); + my $query = join( + " ", + ($select ? $select : ""), + ($from ? $from : ""), + ($where ? $where : ""), + ($orderby ? $orderby : ""), + ($limit ? $limit : "") + ); my $sth = $dbh->prepare($query); $sth->execute(@where_args); my $patrons = $sth->fetchall_arrayref({}); --- a/t/DataTables/Members.t +++ a/t/DataTables/Members.t @@ -0,0 +1,14 @@ +use Modern::Perl; +use Test::More tests => 4; + +use_ok( "C4::Utils::DataTables::Members" ); + +my $patrons = C4::Utils::DataTables::Members::search({ + searchmember => "Doe", + searchfieldstype => 'standard', + searchtype => 'contains' +}); + +isnt( $patrons->{iTotalDisplayRecords}, undef, "The iTotalDisplayRecords key is defined"); +isnt( $patrons->{iTotalRecords}, undef, "The iTotalRecords key is defined"); +is( ref $patrons->{patrons}, 'ARRAY', "The patrons key is an arrayref"); --