+ok($errcode == Net::Z3950::ZOOM::ERROR_INVALID_QUERY,
+ "search for invalid query '$query' fails");
+
+my($xcode, $xmsg, $xinfo, $xset) = (undef, "dummy", "dummy", "dummy");
+$xcode = Net::Z3950::ZOOM::connection_error_x($conn, $xmsg, $xinfo, $xset);
+ok($xcode == $errcode && $xmsg eq $errmsg && $xinfo eq $addinfo &&
+ $xset eq "ZOOM", "error_x() consistent with error()");
+ok(Net::Z3950::ZOOM::connection_errcode($conn) == $errcode,
+ "errcode() consistent with error()");
+ok(Net::Z3950::ZOOM::connection_errmsg($conn) eq $errmsg,
+ "errmsg() consistent with error()");
+ok(Net::Z3950::ZOOM::connection_addinfo($conn) eq $addinfo,
+ "addinfo() consistent with error()");
+ok(Net::Z3950::ZOOM::connection_diagset($conn) eq $xset,
+ "diagset() consistent with error()");
+
+$query = '@attr 1=4 minerals';
+$rs = Net::Z3950::ZOOM::connection_search_pqf($conn, $query);
+$errcode = Net::Z3950::ZOOM::connection_error($conn, $errmsg, $addinfo);
+ok($errcode == 0, "search for '$query'");