package com.github.obourgain.elasticsearch.http.handler.document; import java.io.IOException; import java.util.concurrent.ExecutionException; import org.assertj.core.api.Assertions; import org.elasticsearch.action.bulk.BulkRequest; import org.elasticsearch.action.index.IndexRequest; import org.junit.Test; import com.github.obourgain.elasticsearch.http.AbstractTest; import com.github.obourgain.elasticsearch.http.handler.document.bulk.BulkResponse; public class BulkActionHandlerTest extends AbstractTest { @Test public void should_fail_for_empty() throws ExecutionException, InterruptedException { try { httpClient.bulk(new BulkRequest()).get(); fail(); } catch (Exception e) { Assertions.assertThat(e).hasMessageContaining("ElasticsearchParseException[Failed to derive xcontent"); Assertions.assertThat(e).hasMessageContaining("status code 400"); } } @Test public void should_execute_bulk() throws ExecutionException, InterruptedException, IOException { BulkRequest request = new BulkRequest(); IndexRequest action = new IndexRequest(); action.source(source()); action.index("the_index"); action.type("the_type"); action.id("the_id"); request.add(action); request.add(action); request.add(action); BulkResponse response = httpClient.bulk(request).get(); Assertions.assertThat(response.isErrors()).isFalse(); } }