mirror of
https://github.com/nosqlbench/nosqlbench.git
synced 2025-02-25 18:55:28 -06:00
adding single parse tests
This commit is contained in:
parent
31459a9ab1
commit
3acd6f2700
@ -26,7 +26,7 @@ import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.DatasetFilter;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.DatasetParser;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.FilteredDatasetParser;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.from_json.MultiConditionFilterByKeyword;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.from_json.SingleConditionFilterByKeyword;
|
||||
|
||||
import java.util.function.LongFunction;
|
||||
|
||||
@ -55,7 +55,7 @@ public class HdfToPcPredicatesByKeyword implements LongFunction<String> {
|
||||
dataset = hdfFile.getDatasetByPath(datasetname);
|
||||
recordCount = dataset.getDimensions()[0];
|
||||
parser = DatasetParser.filteredParserFactory(parsername);
|
||||
filter = new MultiConditionFilterByKeyword(filterportion);
|
||||
filter = new SingleConditionFilterByKeyword(filterportion);
|
||||
parser.setFilter(filter);
|
||||
}
|
||||
|
||||
@ -64,6 +64,6 @@ public class HdfToPcPredicatesByKeyword implements LongFunction<String> {
|
||||
long[] sliceOffset = {(l % recordCount)};
|
||||
int[] sliceDimensions = {1};
|
||||
String raw = ((String[])dataset.getData(sliceOffset, sliceDimensions))[0];
|
||||
return parser.parse(raw);
|
||||
return parser.parse(raw).replaceAll("match", "EQ");
|
||||
}
|
||||
}
|
||||
|
@ -19,6 +19,7 @@ package io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser
|
||||
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.from_json.MultiConditionFilterByKeyword;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.from_json.MultiConditionFilterByLevel;
|
||||
import io.nosqlbench.virtdata.library.hdf5.from_long.to_string.predicate_parser.from_json.SingleConditionFilterByKeyword;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
@ -31,14 +32,14 @@ public class PineconeFilterParserTest {
|
||||
"and": [
|
||||
{
|
||||
"department_name": {
|
||||
"EQ": {
|
||||
"match": {
|
||||
"value": "Divided Shoes"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"department_type": {
|
||||
"EQ": {
|
||||
"match": {
|
||||
"value": "Footwear"
|
||||
}
|
||||
}
|
||||
@ -64,6 +65,15 @@ public class PineconeFilterParserTest {
|
||||
assertEquals("Divided Shoes,Footwear", parsed);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testComparatorSingleParseByKeyword() {
|
||||
PineconeFilterParser parser = new PineconeFilterParser();
|
||||
SingleConditionFilterByKeyword scf = new SingleConditionFilterByKeyword("comparator");
|
||||
parser.setFilter(scf);
|
||||
String parsed = parser.parse(test1);
|
||||
assertEquals("Divided Shoes", parsed);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFieldParseByLevel() {
|
||||
PineconeFilterParser parser = new PineconeFilterParser();
|
||||
@ -82,13 +92,22 @@ public class PineconeFilterParserTest {
|
||||
assertEquals("department_name,department_type", parsed);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFieldSingleParseByKeyword() {
|
||||
PineconeFilterParser parser = new PineconeFilterParser();
|
||||
SingleConditionFilterByKeyword scf = new SingleConditionFilterByKeyword("field");
|
||||
parser.setFilter(scf);
|
||||
String parsed = parser.parse(test1);
|
||||
assertEquals("department_name", parsed);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOperatorParseByLevel() {
|
||||
PineconeFilterParser parser = new PineconeFilterParser();
|
||||
MultiConditionFilterByLevel mcf = new MultiConditionFilterByLevel(2, false);
|
||||
parser.setFilter(mcf);
|
||||
String parsed = parser.parse(test1);
|
||||
assertEquals("EQ,EQ", parsed);
|
||||
assertEquals("match,match", parsed);
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -97,7 +116,16 @@ public class PineconeFilterParserTest {
|
||||
MultiConditionFilterByKeyword mcf = new MultiConditionFilterByKeyword("operator");
|
||||
parser.setFilter(mcf);
|
||||
String parsed = parser.parse(test1);
|
||||
assertEquals("EQ,EQ", parsed);
|
||||
assertEquals("match,match", parsed);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOperatorSingleParseByKeyword() {
|
||||
PineconeFilterParser parser = new PineconeFilterParser();
|
||||
SingleConditionFilterByKeyword mcf = new SingleConditionFilterByKeyword("operator");
|
||||
parser.setFilter(mcf);
|
||||
String parsed = parser.parse(test1);
|
||||
assertEquals("match", parsed);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user