use of com.amazon.dataprepper.model.event.Event in project data-prepper by opensearch-project.
the class ParseTreeEvaluatorListenerTest method testSimpleEqualityOperatorExpressionWithJsonPointerTypeMissingKey.
@Test
void testSimpleEqualityOperatorExpressionWithJsonPointerTypeMissingKey() {
final String testMissingKey1 = "missingKey1";
final String testMissingKey2 = "missingKey2";
final String equalStatement = String.format("/%s == /%s", testMissingKey1, testMissingKey2);
final String notEqualStatement = String.format("/%s != 1", testMissingKey1);
final Event testEvent = createTestEvent(new HashMap<>());
assertThat(evaluateStatementOnEvent(equalStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(notEqualStatement, testEvent), is(true));
}
use of com.amazon.dataprepper.model.event.Event in project data-prepper by opensearch-project.
the class ParseTreeEvaluatorListenerTest method testMultipleOperatorsParenthesesExpression.
@Test
void testMultipleOperatorsParenthesesExpression() {
final Event testEvent = createTestEvent(new HashMap<>());
final String testSingleParenthesisStatement = "not (not false) or true";
assertThat(evaluateStatementOnEvent(testSingleParenthesisStatement, testEvent), is(true));
final String testNestedParenthesesStatement = "not ((not false) or true)";
assertThat(evaluateStatementOnEvent(testNestedParenthesesStatement, testEvent), is(false));
}
use of com.amazon.dataprepper.model.event.Event in project data-prepper by opensearch-project.
the class ParseTreeEvaluatorListenerTest method testMultipleOperatorsExpressionRelationalPriorToEquality.
@Test
void testMultipleOperatorsExpressionRelationalPriorToEquality() {
final Event testEvent = createTestEvent(new HashMap<>());
final String greaterThanPriorToEqualStatement = "2 > 1 == true";
final String greaterThanOrEqualPriorToEqualStatement = "1 >= 1 == true";
final String lessThanPriorToEqualStatement = "1 < 2 == true";
final String lessThanOrEqualPriorToEqualStatement = "1 <= 1 == true";
assertThat(evaluateStatementOnEvent(greaterThanPriorToEqualStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(greaterThanOrEqualPriorToEqualStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(lessThanPriorToEqualStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(lessThanOrEqualPriorToEqualStatement, testEvent), is(true));
final String greaterThanPriorToNotEqualStatement = "2 > 1 != false";
final String greaterThanOrEqualPriorToNotEqualStatement = "1 >= 1 != false";
final String lessThanPriorToNotEqualStatement = "1 < 2 != false";
final String lessThanOrEqualPriorToNotEqualStatement = "1 <= 1 != false";
assertThat(evaluateStatementOnEvent(greaterThanPriorToNotEqualStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(greaterThanOrEqualPriorToNotEqualStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(lessThanPriorToNotEqualStatement, testEvent), is(true));
assertThat(evaluateStatementOnEvent(lessThanOrEqualPriorToNotEqualStatement, testEvent), is(true));
}
use of com.amazon.dataprepper.model.event.Event in project data-prepper by opensearch-project.
the class ParseTreeEvaluatorListenerTest method testGetResultWithDoubleWalk.
@Test
void testGetResultWithDoubleWalk() {
final ParseTree testParseTree = parseTreeParser.parse("true");
final Event testEvent = createTestEvent(new HashMap<>());
objectUnderTest = createObjectUnderTest(testEvent);
walker.walk(objectUnderTest, testParseTree);
walker.walk(objectUnderTest, testParseTree);
assertThrows(IllegalStateException.class, objectUnderTest::getResult);
}
use of com.amazon.dataprepper.model.event.Event in project data-prepper by opensearch-project.
the class ParseTreeEvaluatorListenerTest method testSimpleNotOperatorExpressionWithJsonPointerTypeValidValue.
@Test
void testSimpleNotOperatorExpressionWithJsonPointerTypeValidValue() {
final String testKey = "testKey";
final boolean testValue = false;
final Map<String, Boolean> data = Map.of(testKey, testValue);
final String notStatement = String.format("not /%s", testKey);
final Event testEvent = createTestEvent(data);
assertThat(evaluateStatementOnEvent(notStatement, testEvent), is(true));
}
Aggregations