Search in sources :

Example 1 with AggregateActionInput

use of com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput in project data-prepper by opensearch-project.

the class PutAllAggregateActionTest method handleEvent_with_non_empty_groupState_should_combine_Event_with_groupState_correctly.

@Test
void handleEvent_with_non_empty_groupState_should_combine_Event_with_groupState_correctly() {
    combineAggregateAction = createObjectUnderTest();
    final AggregateActionInput aggregateActionInput = new AggregateActionTestUtils.TestAggregateActionInput();
    final GroupState groupState = aggregateActionInput.getGroupState();
    groupState.putAll(events.get(0).toMap());
    final GroupState expectedGroupState = new AggregateActionTestUtils.TestGroupState();
    expectedGroupState.putAll(groupState);
    expectedGroupState.putAll(events.get(1).toMap());
    final AggregateActionResponse aggregateActionResponse = combineAggregateAction.handleEvent(events.get(1), aggregateActionInput);
    assertThat(aggregateActionResponse.getEvent(), equalTo(null));
    assertThat(groupState, equalTo(expectedGroupState));
}
Also used : AggregateActionInput(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput) AggregateActionResponse(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionResponse) GroupState(com.amazon.dataprepper.plugins.processor.aggregate.GroupState) Test(org.junit.jupiter.api.Test)

Example 2 with AggregateActionInput

use of com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput in project data-prepper by opensearch-project.

the class PutAllAggregateActionTest method concludeGroup_should_return_groupState_As_An_Event_correctly.

@Test
void concludeGroup_should_return_groupState_As_An_Event_correctly() {
    combineAggregateAction = createObjectUnderTest();
    final AggregateActionInput aggregateActionInput = new AggregateActionTestUtils.TestAggregateActionInput();
    final GroupState groupState = aggregateActionInput.getGroupState();
    for (final Map<String, Object> eventMap : eventMaps) {
        groupState.putAll(eventMap);
    }
    final Optional<Event> result = combineAggregateAction.concludeGroup(aggregateActionInput);
    assertThat(result.isPresent(), equalTo(true));
    assertThat(result.get().getMetadata().getEventType(), equalTo(PutAllAggregateAction.EVENT_TYPE));
    assertThat(result.get().toMap(), equalTo(groupState));
}
Also used : AggregateActionInput(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput) Event(com.amazon.dataprepper.model.event.Event) JacksonEvent(com.amazon.dataprepper.model.event.JacksonEvent) GroupState(com.amazon.dataprepper.plugins.processor.aggregate.GroupState) Test(org.junit.jupiter.api.Test)

Example 3 with AggregateActionInput

use of com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput in project data-prepper by opensearch-project.

the class PutAllAggregateActionTest method handleEvent_with_empty_group_state_should_return_correct_AggregateResponse_and_add_event_to_groupState.

@Test
void handleEvent_with_empty_group_state_should_return_correct_AggregateResponse_and_add_event_to_groupState() {
    combineAggregateAction = createObjectUnderTest();
    final AggregateActionInput aggregateActionInput = new AggregateActionTestUtils.TestAggregateActionInput();
    final AggregateActionResponse aggregateActionResponse = combineAggregateAction.handleEvent(events.get(0), aggregateActionInput);
    assertThat(aggregateActionResponse.getEvent(), equalTo(null));
    assertThat(aggregateActionInput.getGroupState(), equalTo(events.get(0).toMap()));
}
Also used : AggregateActionInput(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput) AggregateActionResponse(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionResponse) Test(org.junit.jupiter.api.Test)

Example 4 with AggregateActionInput

use of com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput in project data-prepper by opensearch-project.

the class RemoveDuplicatesAggregateActionTest method concludeGroup_with_non_empty_groupState_returns_empty_Optional.

@Test
void concludeGroup_with_non_empty_groupState_returns_empty_Optional() {
    removeDuplicatesAggregateAction = createObjectUnderTest();
    final AggregateActionInput aggregateActionInput = new AggregateActionTestUtils.TestAggregateActionInput();
    final GroupState groupState = aggregateActionInput.getGroupState();
    groupState.put(UUID.randomUUID().toString(), UUID.randomUUID().toString());
    final Optional<Event> result = removeDuplicatesAggregateAction.concludeGroup(aggregateActionInput);
    assertThat(result.isPresent(), equalTo(false));
}
Also used : AggregateActionInput(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput) Event(com.amazon.dataprepper.model.event.Event) JacksonEvent(com.amazon.dataprepper.model.event.JacksonEvent) GroupState(com.amazon.dataprepper.plugins.processor.aggregate.GroupState) Test(org.junit.jupiter.api.Test)

Example 5 with AggregateActionInput

use of com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput in project data-prepper by opensearch-project.

the class RemoveDuplicatesAggregateActionTest method concludeGroup_with_empty_groupState_returns_empty_Optional.

@Test
void concludeGroup_with_empty_groupState_returns_empty_Optional() {
    removeDuplicatesAggregateAction = createObjectUnderTest();
    final AggregateActionInput aggregateActionInput = new AggregateActionTestUtils.TestAggregateActionInput();
    final Optional<Event> result = removeDuplicatesAggregateAction.concludeGroup(aggregateActionInput);
    assertThat(result.isPresent(), equalTo(false));
}
Also used : AggregateActionInput(com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput) Event(com.amazon.dataprepper.model.event.Event) JacksonEvent(com.amazon.dataprepper.model.event.JacksonEvent) Test(org.junit.jupiter.api.Test)

Aggregations

AggregateActionInput (com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionInput)7 Test (org.junit.jupiter.api.Test)7 GroupState (com.amazon.dataprepper.plugins.processor.aggregate.GroupState)5 AggregateActionResponse (com.amazon.dataprepper.plugins.processor.aggregate.AggregateActionResponse)4 Event (com.amazon.dataprepper.model.event.Event)3 JacksonEvent (com.amazon.dataprepper.model.event.JacksonEvent)3