From e3d244164c18a2ec5c93330b7aeaefd4b57925ec Mon Sep 17 00:00:00 2001 From: Boaz Leskes Date: Mon, 20 Mar 2017 18:06:41 +0100 Subject: [PATCH] testSendMessage: log message request/response on failures Original commit: elastic/x-pack-elasticsearch@591284dced5876310d6a7d71f9f4390b2d5da230 --- .../test/integration/SlackServiceTests.java | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/plugin/src/test/java/org/elasticsearch/xpack/watcher/test/integration/SlackServiceTests.java b/plugin/src/test/java/org/elasticsearch/xpack/watcher/test/integration/SlackServiceTests.java index 6503f0fd374..e928dadfb2b 100644 --- a/plugin/src/test/java/org/elasticsearch/xpack/watcher/test/integration/SlackServiceTests.java +++ b/plugin/src/test/java/org/elasticsearch/xpack/watcher/test/integration/SlackServiceTests.java @@ -7,6 +7,8 @@ package org.elasticsearch.xpack.watcher.test.integration; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.common.settings.Settings; +import org.elasticsearch.common.xcontent.XContentBuilder; +import org.elasticsearch.common.xcontent.XContentFactory; import org.elasticsearch.test.junit.annotations.Network; import org.elasticsearch.xpack.notification.slack.SentMessages; import org.elasticsearch.xpack.notification.slack.SlackAccount; @@ -19,6 +21,7 @@ import org.elasticsearch.xpack.watcher.test.AbstractWatcherIntegrationTestCase; import org.elasticsearch.xpack.watcher.transport.actions.put.PutWatchResponse; import org.joda.time.DateTime; +import static org.elasticsearch.common.xcontent.ToXContent.EMPTY_PARAMS; import static org.elasticsearch.index.query.QueryBuilders.boolQuery; import static org.elasticsearch.index.query.QueryBuilders.termQuery; import static org.elasticsearch.search.builder.SearchSourceBuilder.searchSource; @@ -69,10 +72,20 @@ public class SlackServiceTests extends AbstractWatcherIntegrationTestCase { SentMessages messages = account.send(message, null); assertThat(messages.count(), is(2)); for (SentMessages.SentMessage sentMessage : messages) { - assertThat(sentMessage.successful(), is(true)); - assertThat(sentMessage.getRequest(), notNullValue()); - assertThat(sentMessage.getResponse(), notNullValue()); - assertThat(sentMessage.getResponse().status(), lessThan(300)); + try { + assertThat(sentMessage.successful(), is(true)); + assertThat(sentMessage.getRequest(), notNullValue()); + assertThat(sentMessage.getResponse(), notNullValue()); + assertThat(sentMessage.getResponse().status(), lessThan(300)); + } catch (AssertionError e) { + XContentBuilder builder = XContentFactory.jsonBuilder(); + builder.prettyPrint(); + sentMessage.toXContent(builder, EMPTY_PARAMS); + final String messageDescription = builder.string(); + logger.warn("failed to send message. full message description: \n" + + messageDescription, e); + throw e; + } } }