use of edu.uci.ics.texera.textql.statements.predicates.ExtractPredicate in project textdb by TextDB.
the class CreateViewStatementTest method testCreateViewStatementBeansBuilder01.
/**
* Test the correctness of the generated beans by a CreateViewStatement with
* a SelectExtractStatement as sub-statement with a
* SelectSomeFieldsPredicate and a KeywordExtractPredicate.
* Get a graph by calling getInternalOperatorBeans() and getInternalLinkBeans()
* methods and check if the generated path form the node getInputNodeID() to
* the node getOutputNodeID() is correct. Also check whether getInputViews()
* is returning the correct dependencies.
*/
@Test
public void testCreateViewStatementBeansBuilder01() {
ProjectPredicate projectPredicate = new ProjectSomeFieldsPredicate(Arrays.asList("x", "y"));
ExtractPredicate extractPredicate = new KeywordExtractPredicate(Arrays.asList("a", "b"), "zzz", KeywordMatchingType.SUBSTRING_SCANBASED.toString());
Statement subStatement = new SelectStatement("id", projectPredicate, extractPredicate, "from", null, null);
CreateViewStatement createViewStatement = new CreateViewStatement("idx", subStatement);
List<PredicateBase> expectedGeneratedBeans = Collections.emptyList();
List<String> dependencies = Arrays.asList(subStatement.getId());
Assert.assertEquals(createViewStatement.getInputViews(), dependencies);
StatementTestUtils.assertGeneratedBeans(createViewStatement, expectedGeneratedBeans);
}
use of edu.uci.ics.texera.textql.statements.predicates.ExtractPredicate in project textdb by TextDB.
the class SelectStatementTest method testConstructorAndGetters.
/**
* Test the class constructor and the getter methods.
* Call the constructor of SelectStatement and test if the
* returned value by the getter is the same.
*/
@Test
public void testConstructorAndGetters() {
ProjectPredicate projectPredicate;
ExtractPredicate extractPredicate;
SelectStatement selectExtractStatement;
// Tests for the id attribute
selectExtractStatement = new SelectStatement(null, null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getId(), null);
selectExtractStatement = new SelectStatement("idx", null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getId(), "idx");
selectExtractStatement = new SelectStatement("_sid08", null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getId(), "_sid08");
// Tests for the projectPredicate attribute
selectExtractStatement = new SelectStatement("", null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), null);
projectPredicate = new ProjectAllFieldsPredicate();
selectExtractStatement = new SelectStatement(null, projectPredicate, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), projectPredicate);
projectPredicate = new ProjectSomeFieldsPredicate(Arrays.asList("a", "b", "c"));
selectExtractStatement = new SelectStatement(null, projectPredicate, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), projectPredicate);
projectPredicate = new ProjectSomeFieldsPredicate(Arrays.asList("f0", "f1"));
selectExtractStatement = new SelectStatement(null, projectPredicate, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), projectPredicate);
// Tests for the extractPredicate attribute
selectExtractStatement = new SelectStatement(null, null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), null);
extractPredicate = new KeywordExtractPredicate(Arrays.asList("x", "y"), "keyword", KeywordMatchingType.SUBSTRING_SCANBASED.toString());
selectExtractStatement = new SelectStatement(null, null, extractPredicate, null, null, null);
Assert.assertEquals(selectExtractStatement.getExtractPredicate(), extractPredicate);
extractPredicate = new KeywordExtractPredicate(Arrays.asList("z6", "t4"), "xyz", KeywordMatchingType.PHRASE_INDEXBASED.toString());
selectExtractStatement = new SelectStatement(null, null, extractPredicate, null, null, null);
Assert.assertEquals(selectExtractStatement.getExtractPredicate(), extractPredicate);
// Tests for the fromClause attribute
selectExtractStatement = new SelectStatement(null, null, null, null, null, null);
selectExtractStatement.setFromClause(null);
selectExtractStatement = new SelectStatement(null, null, null, "tab", null, null);
selectExtractStatement.setFromClause("tab");
selectExtractStatement = new SelectStatement(null, null, null, "t1", null, null);
selectExtractStatement.setFromClause("t1");
// Tests for the limitClause attribute
selectExtractStatement = new SelectStatement(null, null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getLimitClause(), null);
selectExtractStatement = new SelectStatement(null, null, null, null, 0, null);
Assert.assertEquals(selectExtractStatement.getLimitClause(), Integer.valueOf(0));
selectExtractStatement = new SelectStatement(null, null, null, null, 8, null);
Assert.assertEquals(selectExtractStatement.getLimitClause(), Integer.valueOf(8));
selectExtractStatement = new SelectStatement(null, null, null, null, -151, null);
Assert.assertEquals(selectExtractStatement.getLimitClause(), Integer.valueOf(-151));
// Tests for the offsetClause attribute
selectExtractStatement = new SelectStatement(null, null, null, null, null, null);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), null);
selectExtractStatement = new SelectStatement(null, null, null, null, null, 0);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), Integer.valueOf(0));
selectExtractStatement = new SelectStatement(null, null, null, null, null, 562);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), Integer.valueOf(562));
selectExtractStatement = new SelectStatement(null, null, null, null, null, -98);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), Integer.valueOf(-98));
}
use of edu.uci.ics.texera.textql.statements.predicates.ExtractPredicate in project textdb by TextDB.
the class SelectStatementTest method testSelectStatementBeansBuilder05.
/**
* Test the correctness of the generated beans by a SelectStatement with a
* ProjectAllFieldsPredicate and a KeywordExtractPredicate.
* Get a graph by calling getInternalPredicateBases() and getInternalLinkBeans()
* methods and check if the generated path form the node getInputNodeID() to
* the node getOutputNodeID() is correct. Also check whether getInputViews()
* is returning the correct dependencies.
*/
@Test
public void testSelectStatementBeansBuilder05() {
ProjectPredicate projectPredicate = new ProjectSomeFieldsPredicate(Arrays.asList("a", "b"));
ExtractPredicate extractPredicate = new KeywordExtractPredicate(Arrays.asList("a", "b"), "x", KeywordMatchingType.SUBSTRING_SCANBASED.toString());
SelectStatement selectStatement = new SelectStatement("_sid4", projectPredicate, extractPredicate, "from", null, null);
List<PredicateBase> expectedGeneratedBeans = Arrays.asList(new KeywordPredicate("x", Arrays.asList("a", "b"), null, KeywordMatchingType.SUBSTRING_SCANBASED, "_sid4_e"), new ProjectionPredicate(Arrays.asList("a", "b")));
List<String> dependencies = Arrays.asList("from");
Assert.assertEquals(selectStatement.getInputViews(), dependencies);
StatementTestUtils.assertGeneratedBeans(selectStatement, expectedGeneratedBeans);
}
use of edu.uci.ics.texera.textql.statements.predicates.ExtractPredicate in project textdb by TextDB.
the class SelectStatementTest method testSettersAndGetters.
/**
* Test the setter methods and the getter methods.
* Call the setter of SelectStatement and test if the returned
* value by the getter is the same.
*/
@Test
public void testSettersAndGetters() {
ProjectPredicate projectPredicate;
ExtractPredicate extractPredicate;
SelectStatement selectExtractStatement = new SelectStatement();
// Tests for the id attribute
selectExtractStatement.setId(null);
Assert.assertEquals(selectExtractStatement.getId(), null);
selectExtractStatement.setId("idx");
Assert.assertEquals(selectExtractStatement.getId(), "idx");
selectExtractStatement.setId("_sid9");
Assert.assertEquals(selectExtractStatement.getId(), "_sid9");
// Tests for the projectPredicate attribute
selectExtractStatement.setProjectPredicate(null);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), null);
projectPredicate = new ProjectAllFieldsPredicate();
selectExtractStatement.setProjectPredicate(projectPredicate);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), projectPredicate);
projectPredicate = new ProjectSomeFieldsPredicate(Arrays.asList("a", "b", "c"));
selectExtractStatement.setProjectPredicate(projectPredicate);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), projectPredicate);
projectPredicate = new ProjectSomeFieldsPredicate(Arrays.asList("f0", "f1"));
selectExtractStatement.setProjectPredicate(projectPredicate);
Assert.assertEquals(selectExtractStatement.getProjectPredicate(), projectPredicate);
// Tests for the extractPredicate attribute
selectExtractStatement.setExtractPredicate(null);
Assert.assertEquals(selectExtractStatement.getExtractPredicate(), null);
extractPredicate = new KeywordExtractPredicate(Arrays.asList("a", "c"), "search", KeywordMatchingType.PHRASE_INDEXBASED.toString());
selectExtractStatement.setExtractPredicate(extractPredicate);
Assert.assertEquals(selectExtractStatement.getExtractPredicate(), extractPredicate);
extractPredicate = new KeywordExtractPredicate(Arrays.asList("u", "v"), "news", KeywordMatchingType.CONJUNCTION_INDEXBASED.toString());
selectExtractStatement.setExtractPredicate(extractPredicate);
Assert.assertEquals(selectExtractStatement.getExtractPredicate(), extractPredicate);
// Tests for the fromClause attribute
selectExtractStatement.setFromClause(null);
Assert.assertEquals(selectExtractStatement.getFromClause(), null);
selectExtractStatement.setFromClause("table");
Assert.assertEquals(selectExtractStatement.getFromClause(), "table");
selectExtractStatement.setFromClause("t3");
Assert.assertEquals(selectExtractStatement.getFromClause(), "t3");
// Tests for the limitClause attribute
selectExtractStatement.setLimitClause(null);
Assert.assertEquals(selectExtractStatement.getLimitClause(), null);
selectExtractStatement.setLimitClause(0);
Assert.assertEquals(selectExtractStatement.getLimitClause(), Integer.valueOf(0));
selectExtractStatement.setLimitClause(5);
Assert.assertEquals(selectExtractStatement.getLimitClause(), Integer.valueOf(5));
selectExtractStatement.setLimitClause(-7);
Assert.assertEquals(selectExtractStatement.getLimitClause(), Integer.valueOf(-7));
// Tests for the offsetClause attribute
selectExtractStatement.setOffsetClause(null);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), null);
selectExtractStatement.setOffsetClause(0);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), Integer.valueOf(0));
selectExtractStatement.setOffsetClause(-3);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), Integer.valueOf(-3));
selectExtractStatement.setOffsetClause(58);
Assert.assertEquals(selectExtractStatement.getOffsetClause(), Integer.valueOf(58));
}
Aggregations