NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
PatternParsingServiceTest.cpp File Reference
#include <API/Query.hpp>
#include <API/QueryAPI.hpp>
#include <BaseIntegrationTest.hpp>
#include <Expressions/LogicalExpressions/EqualsExpressionNode.hpp>
#include <Expressions/LogicalExpressions/GreaterEqualsExpressionNode.hpp>
#include <Expressions/LogicalExpressions/GreaterExpressionNode.hpp>
#include <Expressions/LogicalExpressions/LessExpressionNode.hpp>
#include <Operators/LogicalOperators/LogicalBinaryOperator.hpp>
#include <Operators/LogicalOperators/LogicalFilterOperator.hpp>
#include <Operators/LogicalOperators/LogicalIntervalJoinOperator.hpp>
#include <Operators/LogicalOperators/Sources/LogicalSourceDescriptor.hpp>
#include <Operators/LogicalOperators/Windows/Joins/LogicalJoinOperator.hpp>
#include <Plans/Query/QueryPlan.hpp>
#include <Services/QueryParsingService.hpp>
#include <Util/Logger/Logger.hpp>
#include <gtest/gtest.h>
#include <iostream>
#include <regex>
Include dependency graph for PatternParsingServiceTest.cpp:

Classes

class  PatternParsingServiceTest
 

Functions

std::string queryPlanToString (const QueryPlanPtr queryPlan)
 
uint64_t getNumberOfJoinExpression (std::vector< std::shared_ptr< LogicalJoinOperator >> joins)
 
uint64_t getNumberOfJoinExpression (std::vector< std::shared_ptr< LogicalIntervalJoinOperator >> joins)
 
 TEST_F (PatternParsingServiceTest, simplePattern)
 
 TEST_F (PatternParsingServiceTest, DisjunctionPattern)
 
 TEST_F (PatternParsingServiceTest, NestedDisjunctionPattern)
 
 TEST_F (PatternParsingServiceTest, ConjunctionPatternWithFilterTumblingWindow)
 
 TEST_F (PatternParsingServiceTest, ConjunctionPatternWithFilterIntervalJoin)
 
 TEST_F (PatternParsingServiceTest, NestedConjunctionPattern)
 
 TEST_F (PatternParsingServiceTest, NestedConjunctionPatternWithFilter)
 
 TEST_F (PatternParsingServiceTest, SequencePattern)
 
 TEST_F (PatternParsingServiceTest, NestedSequencePattern)
 
 TEST_F (PatternParsingServiceTest, NestedSequencePatternWithIntervalJoin)
 
 TEST_F (PatternParsingServiceTest, MixedOperatorPattern)
 
 TEST_F (PatternParsingServiceTest, MixedOperatorPatternIntervalJoin)
 
 TEST_F (PatternParsingServiceTest, DISABLED_SequenceAndTimesPattern)
 
 TEST_F (PatternParsingServiceTest, simplePatternWithSelect)
 
 TEST_F (PatternParsingServiceTest, simplePatternWithMultipleSelectStatements)
 
 TEST_F (PatternParsingServiceTest, TimesOperator)
 
 TEST_F (PatternParsingServiceTest, TimesOperatorExact)
 
 TEST_F (PatternParsingServiceTest, TimesOperatorUnbounded)
 
 TEST_F (PatternParsingServiceTest, failingPatternWrongSyntaxExpected)
 
 TEST_F (PatternParsingServiceTest, SequencePatternChariteTest)
 
 TEST_F (PatternParsingServiceTest, SequencePatternDemoTest)
 
 TEST_F (PatternParsingServiceTest, SequencePatternDemoTest2)
 
 TEST_F (PatternParsingServiceTest, OrderIntervalTest)
 
 TEST_F (PatternParsingServiceTest, OrderSlidingTest)
 

Function Documentation

◆ getNumberOfJoinExpression() [1/2]

uint64_t getNumberOfJoinExpression ( std::vector< std::shared_ptr< LogicalIntervalJoinOperator >>  joins)

References NES::BreadthFirstNodeIterator::end(), and NES_DEBUG.

Here is the call graph for this function:

◆ getNumberOfJoinExpression() [2/2]

uint64_t getNumberOfJoinExpression ( std::vector< std::shared_ptr< LogicalJoinOperator >>  joins)

References NES::BreadthFirstNodeIterator::end(), and NES_DEBUG.

Referenced by TEST_F().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ queryPlanToString()

std::string queryPlanToString ( const QueryPlanPtr  queryPlan)

Referenced by TEST_F().

Here is the caller graph for this function:

◆ TEST_F() [1/24]

◆ TEST_F() [2/24]

TEST_F ( PatternParsingServiceTest  ,
ConjunctionPatternWithFilterTumblingWindow   
)

References NES::Query::andWith(), NES::Attribute(), NES::API::EventTime(), getNumberOfJoinExpression(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), and NES::CEPOperatorBuilder::And::window().

Here is the call graph for this function:

◆ TEST_F() [3/24]

TEST_F ( PatternParsingServiceTest  ,
DISABLED_SequenceAndTimesPattern   
)

◆ TEST_F() [4/24]

TEST_F ( PatternParsingServiceTest  ,
DisjunctionPattern   
)

References queryPlanToString().

Here is the call graph for this function:

◆ TEST_F() [5/24]

TEST_F ( PatternParsingServiceTest  ,
failingPatternWrongSyntaxExpected   
)

◆ TEST_F() [6/24]

TEST_F ( PatternParsingServiceTest  ,
MixedOperatorPattern   
)

References NES::Query::andWith(), NES::Attribute(), NES::API::EventTime(), NES::Query::from(), getNumberOfJoinExpression(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::seqWith(), NES::CEPOperatorBuilder::And::window(), and NES::CEPOperatorBuilder::Seq::window().

Here is the call graph for this function:

◆ TEST_F() [7/24]

◆ TEST_F() [8/24]

TEST_F ( PatternParsingServiceTest  ,
NestedConjunctionPattern   
)

References NES::Query::andWith(), NES::Attribute(), NES::API::EventTime(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), and NES::CEPOperatorBuilder::And::window().

Here is the call graph for this function:

◆ TEST_F() [9/24]

TEST_F ( PatternParsingServiceTest  ,
NestedConjunctionPatternWithFilter   
)

References NES::Query::andWith(), NES::Attribute(), NES::API::EventTime(), getNumberOfJoinExpression(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), and NES::CEPOperatorBuilder::And::window().

Here is the call graph for this function:

◆ TEST_F() [10/24]

TEST_F ( PatternParsingServiceTest  ,
NestedDisjunctionPattern   
)

References NES::Query::getQueryPlan(), queryPlanToString(), and NES::Query::unionWith().

Here is the call graph for this function:

◆ TEST_F() [11/24]

TEST_F ( PatternParsingServiceTest  ,
NestedSequencePattern   
)

References NES::Attribute(), NES::API::EventTime(), NES::Query::from(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::seqWith(), and NES::CEPOperatorBuilder::Seq::window().

Here is the call graph for this function:

◆ TEST_F() [12/24]

◆ TEST_F() [13/24]

◆ TEST_F() [14/24]

TEST_F ( PatternParsingServiceTest  ,
OrderSlidingTest   
)

References NES::Query::andWith(), NES::Attribute(), NES::API::EventTime(), getNumberOfJoinExpression(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), and NES::CEPOperatorBuilder::And::window().

Here is the call graph for this function:

◆ TEST_F() [15/24]

TEST_F ( PatternParsingServiceTest  ,
SequencePattern   
)

References NES::Attribute(), NES::API::EventTime(), NES::Query::from(), getNumberOfJoinExpression(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::seqWith(), and NES::CEPOperatorBuilder::Seq::window().

Here is the call graph for this function:

◆ TEST_F() [16/24]

TEST_F ( PatternParsingServiceTest  ,
SequencePatternChariteTest   
)

References NES::Attribute(), NES::API::EventTime(), NES::Query::from(), getNumberOfJoinExpression(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::seqWith(), and NES::CEPOperatorBuilder::Seq::window().

Here is the call graph for this function:

◆ TEST_F() [17/24]

TEST_F ( PatternParsingServiceTest  ,
SequencePatternDemoTest   
)

◆ TEST_F() [18/24]

TEST_F ( PatternParsingServiceTest  ,
SequencePatternDemoTest2   
)

◆ TEST_F() [19/24]

TEST_F ( PatternParsingServiceTest  ,
simplePattern   
)

References NES::Attribute(), and queryPlanToString().

Here is the call graph for this function:

◆ TEST_F() [20/24]

TEST_F ( PatternParsingServiceTest  ,
simplePatternWithMultipleSelectStatements   
)

References NES::Attribute(), and queryPlanToString().

Here is the call graph for this function:

◆ TEST_F() [21/24]

TEST_F ( PatternParsingServiceTest  ,
simplePatternWithSelect   
)

References NES::Attribute(), and queryPlanToString().

Here is the call graph for this function:

◆ TEST_F() [22/24]

TEST_F ( PatternParsingServiceTest  ,
TimesOperator   
)

References NES::Attribute(), NES::API::EventTime(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::times(), and NES::CEPOperatorBuilder::Times::window().

Here is the call graph for this function:

◆ TEST_F() [23/24]

TEST_F ( PatternParsingServiceTest  ,
TimesOperatorExact   
)

References NES::Attribute(), NES::API::EventTime(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::times(), and NES::CEPOperatorBuilder::Times::window().

Here is the call graph for this function:

◆ TEST_F() [24/24]

TEST_F ( PatternParsingServiceTest  ,
TimesOperatorUnbounded   
)

References NES::Attribute(), NES::API::EventTime(), NES::Query::getQueryPlan(), NES::API::Minutes(), queryPlanToString(), NES::Query::times(), and NES::CEPOperatorBuilder::Times::window().

Here is the call graph for this function: