LP#1687649 Z39.50 CQL query parser honors bools
authorBill Erickson <berickxx@gmail.com>
Tue, 2 May 2017 15:51:12 +0000 (11:51 -0400)
committerGalen Charlton <gmc@equinoxinitiative.org>
Mon, 8 May 2017 13:13:26 +0000 (09:13 -0400)
To test with yaz-client, Z server on localhost, database=evergreen:

Z> open localhost:2210/evergreen
Z> find @or @attr 1=4 @attr 4=6 "potter" @attr 1=4 @attr 4=6 "piano"

"Number of hits:" value should be greater than zero (~38) using the
concerto data set.

Similarly, opensrf logs should contain the line:

SRU search string [(title = potter or title = piano)] converted to
[title:potter || title:piano]

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm

index e9e3487..bb1dbd6 100644 (file)
@@ -2125,7 +2125,7 @@ sub sru_search {
         my $op =  '||' if uc $self->op() eq 'OR';
         $op ||=  '&&';
 
-        return  "$leftStr $rightStr";
+        return  "$leftStr $op $rightStr";
     }
 
     sub toEvergreenAuth {