@Test public void isSuccess_returns_false_if_failed_to_send_http_request() { WebhookDelivery delivery = newBuilderTemplate() .setError(new IOException("Fail to connect")) .build(); assertThat(delivery.isSuccess()).isFalse(); }
@Test public void isSuccess_returns_false_if_http_response_returns_error_status() { WebhookDelivery delivery = newBuilderTemplate() .setHttpStatus(404) .build(); assertThat(delivery.isSuccess()).isFalse(); }
@Test public void isSuccess_returns_true_if_http_response_returns_2xx_code() { WebhookDelivery delivery = newBuilderTemplate() .setHttpStatus(204) .build(); assertThat(delivery.isSuccess()).isTrue(); }
private WebhookDeliveryDto toDto(WebhookDelivery delivery) { WebhookDeliveryDto dto = new WebhookDeliveryDto(); dto.setUuid(uuidFactory.create()); dto.setWebhookUuid(delivery.getWebhook().getUuid()); dto.setComponentUuid(delivery.getWebhook().getComponentUuid()); delivery.getWebhook().getCeTaskUuid().ifPresent(dto::setCeTaskUuid); delivery.getWebhook().getAnalysisUuid().ifPresent(dto::setAnalysisUuid); dto.setName(delivery.getWebhook().getName()); dto.setUrl(delivery.getEffectiveUrl().orElse(delivery.getWebhook().getUrl())); dto.setSuccess(delivery.isSuccess()); dto.setHttpStatus(delivery.getHttpStatus().orElse(null)); dto.setDurationMs(delivery.getDurationInMs().orElse(null)); dto.setErrorStacktrace(delivery.getError().map(Throwables::getStackTraceAsString).orElse(null)); dto.setPayload(delivery.getPayload().getJson()); dto.setCreatedAt(delivery.getAt()); return dto; } }
private WebhookDeliveryDto toDto(WebhookDelivery delivery) { WebhookDeliveryDto dto = new WebhookDeliveryDto(); dto.setUuid(uuidFactory.create()); dto.setWebhookUuid(delivery.getWebhook().getUuid()); dto.setComponentUuid(delivery.getWebhook().getComponentUuid()); delivery.getWebhook().getCeTaskUuid().ifPresent(dto::setCeTaskUuid); delivery.getWebhook().getAnalysisUuid().ifPresent(dto::setAnalysisUuid); dto.setName(delivery.getWebhook().getName()); dto.setUrl(delivery.getWebhook().getUrl()); dto.setSuccess(delivery.isSuccess()); dto.setHttpStatus(delivery.getHttpStatus().orElse(null)); dto.setDurationMs(delivery.getDurationInMs().orElse(null)); dto.setErrorStacktrace(delivery.getError().map(Throwables::getStackTraceAsString).orElse(null)); dto.setPayload(delivery.getPayload().getJson()); dto.setCreatedAt(delivery.getAt()); return dto; } }