Skip to content

Commit

Permalink
Add test coverage for data-prepper-api
Browse files Browse the repository at this point in the history
Signed-off-by: Taylor Gray <tylgry@amazon.com>
  • Loading branch information
graytaylor0 committed Oct 20, 2023
1 parent b08e9d4 commit d9119c2
Showing 1 changed file with 29 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -549,6 +549,35 @@ public void testBuild_withIsValidFormatExpressionsWithNullEvaluator() {
assertThat(JacksonEvent.isValidFormatExpressions("${}", null), equalTo(false));
}

@Test
public void formatString_with_expression_evaluator_catches_exception_when_Event_get_throws_exception() {

final String jsonString = "{\"foo\": \"bar\", \"info\": {\"ids\": {\"id\":\"idx\"}}}";
final String expressionStatement = UUID.randomUUID().toString();
final String invalidKeyExpression = "getMetadata(\"metadata-key\")";
final String invalidKeyExpressionResult = UUID.randomUUID().toString();
final String expressionEvaluationResult = UUID.randomUUID().toString();

final String formatString = "${" + invalidKeyExpression + "}-${" + expressionStatement + "}-test-string";
final String finalString = invalidKeyExpressionResult + "-" + expressionEvaluationResult + "-test-string";

event = JacksonEvent.builder()
.withEventType(eventType)
.withData(jsonString)
.getThis()
.build();

final ExpressionEvaluator expressionEvaluator = mock(ExpressionEvaluator.class);

when(expressionEvaluator.isValidExpressionStatement("foo")).thenReturn(false);
when(expressionEvaluator.isValidExpressionStatement(expressionStatement)).thenReturn(true);
when(expressionEvaluator.isValidExpressionStatement(invalidKeyExpression)).thenReturn(true);
when(expressionEvaluator.evaluate(invalidKeyExpression, event)).thenReturn(invalidKeyExpressionResult);
when(expressionEvaluator.evaluate(expressionStatement, event)).thenReturn(expressionEvaluationResult);

assertThat(event.formatString(formatString, expressionEvaluator), is(equalTo(finalString)));
}

@Test
public void testBuild_withFormatStringWithExpressionEvaluator() {

Expand Down

0 comments on commit d9119c2

Please sign in to comment.