use of io.zeebe.test.broker.protocol.clientapi.ExecuteCommandResponse in project zeebe by zeebe-io.
the class CreateTopicTest method shouldNotCreateTopicWithZeroPartitions.
@Test
public void shouldNotCreateTopicWithZeroPartitions() {
// given
final String topicName = "newTopic";
final int numberOfPartitions = 0;
// when
final ExecuteCommandResponse response = apiRule.createTopic(topicName, numberOfPartitions);
// then
assertThat(response.getEvent()).containsExactly(entry("state", "CREATE_REJECTED"), entry("name", topicName), entry("partitions", numberOfPartitions));
}
use of io.zeebe.test.broker.protocol.clientapi.ExecuteCommandResponse in project zeebe by zeebe-io.
the class CreateDeploymentTest method shouldRejectDeploymentIfOneResourceIsNotValid.
@Test
public void shouldRejectDeploymentIfOneResourceIsNotValid() {
// given
final WorkflowDefinition invalidDefinition = Bpmn.createExecutableWorkflow("process").done();
final List<Map<String, Object>> resources = Arrays.asList(deploymentResource(bpmnXml(WORKFLOW), "process1.bpmn"), deploymentResource(bpmnXml(invalidDefinition), "process2.bpmn"));
// when
final ExecuteCommandResponse resp = apiRule.createCmdRequest().partitionId(Protocol.SYSTEM_PARTITION).eventType(EventType.DEPLOYMENT_EVENT).command().put(PROP_STATE, "CREATE").put("topicName", ClientApiRule.DEFAULT_TOPIC_NAME).put("resources", resources).done().sendAndAwait();
// then
assertThat(resp.key()).isGreaterThanOrEqualTo(0L);
assertThat(resp.getEvent()).containsEntry(PROP_STATE, "REJECTED");
assertThat((String) resp.getEvent().get("errorMessage")).contains("Resource 'process2.bpmn':").contains("The process must contain at least one none start event.");
}
use of io.zeebe.test.broker.protocol.clientapi.ExecuteCommandResponse in project zeebe by zeebe-io.
the class CreateDeploymentTest method shouldCreateDeploymentWithBpmnXml.
@Test
public void shouldCreateDeploymentWithBpmnXml() {
// when
final ExecuteCommandResponse resp = apiRule.createCmdRequest().partitionId(Protocol.SYSTEM_PARTITION).eventType(EventType.DEPLOYMENT_EVENT).command().put(PROP_STATE, "CREATE").put("topicName", ClientApiRule.DEFAULT_TOPIC_NAME).put("resources", Collections.singletonList(deploymentResource(bpmnXml(WORKFLOW), "process.bpmn"))).done().sendAndAwait();
// then
assertThat(resp.key()).isGreaterThanOrEqualTo(0L);
assertThat(resp.position()).isGreaterThanOrEqualTo(0L);
assertThat(resp.partitionId()).isEqualTo(Protocol.SYSTEM_PARTITION);
assertThat(resp.getEvent()).containsEntry(PROP_STATE, "CREATED");
}
use of io.zeebe.test.broker.protocol.clientapi.ExecuteCommandResponse in project zeebe by zeebe-io.
the class CreateDeploymentTest method shouldRejectDeploymentIfTopicNotExists.
@Test
public void shouldRejectDeploymentIfTopicNotExists() {
// when
final ExecuteCommandResponse resp = apiRule.topic().deployWithResponse("not-existing", WORKFLOW);
// then
assertThat(resp.key()).isGreaterThanOrEqualTo(0L);
assertThat(resp.getEvent()).containsEntry(PROP_STATE, "REJECTED");
assertThat((String) resp.getEvent().get("errorMessage")).isEmpty();
}
use of io.zeebe.test.broker.protocol.clientapi.ExecuteCommandResponse in project zeebe by zeebe-io.
the class CreateDeploymentTest method shouldCreateDeploymentResourceWithMultipleWorkflows.
@Test
public void shouldCreateDeploymentResourceWithMultipleWorkflows() throws IOException {
// given
final InputStream resourceAsStream = getClass().getResourceAsStream("/workflows/collaboration.bpmn");
// when
final ExecuteCommandResponse resp = apiRule.topic().deployWithResponse(ClientApiRule.DEFAULT_TOPIC_NAME, StreamUtil.read(resourceAsStream), ResourceType.BPMN_XML.name(), "collaboration.bpmn");
// then
assertThat(resp.getEvent()).containsEntry(PROP_STATE, "CREATED");
final List<SubscribedEvent> workflowEvents = apiRule.topic().receiveEvents(workflowEvents("CREATED")).limit(2).collect(toList());
assertThat(workflowEvents).extracting(s -> s.event().get(PROP_WORKFLOW_BPMN_PROCESS_ID)).contains("process1", "process2");
}
Aggregations