use of com.redhat.service.bridge.infra.models.dto.ProcessorDTO in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.
the class WebhookActionTest method testInvokerException.
@Test
void testInvokerException() {
ProcessorDTO processor = createProcessorWithParameterlessAction();
assertThatExceptionOfType(ActionProviderException.class).isThrownBy(() -> webhookAction.getActionInvoker(processor, processor.getDefinition().getResolvedAction()));
}
use of com.redhat.service.bridge.infra.models.dto.ProcessorDTO in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.
the class WebhookActionTest method createProcessorWithParameterlessAction.
private ProcessorDTO createProcessorWithParameterlessAction() {
BaseAction action = new BaseAction();
action.setType(WebhookAction.TYPE);
Map<String, String> params = new HashMap<>();
action.setParameters(params);
ProcessorDTO processor = new ProcessorDTO();
processor.setId("myProcessor");
processor.setDefinition(new ProcessorDefinition(null, null, action));
processor.setBridgeId("myBridge");
return processor;
}
use of com.redhat.service.bridge.infra.models.dto.ProcessorDTO in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.
the class ExecutorsProviderImpl method init.
@PostConstruct
void init() {
ProcessorDTO dto = readProcessor(processorDefinition);
this.executor = new Executor(dto, filterEvaluatorFactory, transformationEvaluatorFactory, actionProviderFactory, registry);
}
use of com.redhat.service.bridge.infra.models.dto.ProcessorDTO in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.
the class ExecutorTest method testOnEventWithNoMatchingFilters.
@Test
public void testOnEventWithNoMatchingFilters() throws JsonProcessingException {
Set<BaseFilter> filters = new HashSet<>();
filters.add(new StringEquals("data.key", "notTheValue"));
BaseAction action = new BaseAction();
action.setType(KafkaTopicAction.TYPE);
ProcessorDTO processorDTO = createProcessor(new ProcessorDefinition(filters, null, action));
Executor executor = new Executor(processorDTO, filterEvaluatorFactory, transformationEvaluatorFactory, actionProviderFactoryMock, meterRegistry);
CloudEvent cloudEvent = createCloudEvent();
executor.onEvent(cloudEvent);
verify(actionInvokerMock, never()).onEvent(any());
}
use of com.redhat.service.bridge.infra.models.dto.ProcessorDTO in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.
the class ExecutorTest method testOnEventWithFiltersTransformationAndDifferentRequestedResolvedActions.
@Test
public void testOnEventWithFiltersTransformationAndDifferentRequestedResolvedActions() throws JsonProcessingException {
Set<BaseFilter> filters = new HashSet<>();
filters.add(new StringEquals("data.key", "value"));
String transformationTemplate = "{\"test\": \"{data.key}\"}";
BaseAction requestedAction = new BaseAction();
requestedAction.setType("SendToBridge");
BaseAction resolvedAction = new BaseAction();
resolvedAction.setType(WebhookAction.TYPE);
ProcessorDTO processorDTO = createProcessor(new ProcessorDefinition(filters, transformationTemplate, requestedAction, resolvedAction));
Executor executor = new Executor(processorDTO, filterEvaluatorFactory, transformationEvaluatorFactory, actionProviderFactoryMock, meterRegistry);
CloudEvent cloudEvent = createCloudEvent();
executor.onEvent(cloudEvent);
verify(actionProviderFactoryMock).getInvokableActionProvider(WebhookAction.TYPE);
verify(actionInvokerMock, times(1)).onEvent(any());
}
Aggregations