From 674d5adfc0e5d1164fa9ab96aea8f2b7ad8c2780 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Fri, 26 Oct 2018 12:28:07 -0400 Subject: [PATCH] INT-4114: Add missed `` to XSDs JIRA: https://jira.spring.io/browse/INT-4114 --- .../config/spring-integration-file-5.1.xsd | 5 ++ ...ToStringTransformerParserTests-context.xml | 8 ++- .../FileToStringTransformerParserTests.java | 9 ++- .../jms/config/spring-integration-jms-5.1.xsd | 1 + .../config/JmsHeaderEnricherTests-context.xml | 13 ++-- .../jms/config/JmsHeaderEnricherTests.java | 17 ++--- .../config/spring-integration-mail-5.1.xsd | 6 +- .../MailHeaderEnricherTests-context.xml | 8 +++ .../mail/config/MailHeaderEnricherTests.java | 13 ++-- .../MailToStringTransformerParserTests.java | 65 ++++++++++--------- .../mailToStringTransformerParserTests.xml | 18 +++-- .../config/spring-integration-mongodb-5.1.xsd | 5 ++ ...goDbOutboundGatewayParserTests-context.xml | 14 +++- .../MongoDbOutboundGatewayParserTests.java | 19 +++++- .../ws/config/spring-integration-ws-5.1.xsd | 3 +- .../WebServiceHeaderEnricherTests-context.xml | 15 ++++- .../config/WebServiceHeaderEnricherTests.java | 10 ++- .../xml/config/spring-integration-xml-5.1.xsd | 31 +++++++-- .../config/spring-integration-xmpp-5.1.xsd | 3 +- .../XmppHeaderEnricherParserTests-context.xml | 6 +- .../config/XmppHeaderEnricherParserTests.java | 37 +++++++---- 21 files changed, 216 insertions(+), 90 deletions(-) diff --git a/spring-integration-file/src/main/resources/org/springframework/integration/file/config/spring-integration-file-5.1.xsd b/spring-integration-file/src/main/resources/org/springframework/integration/file/config/spring-integration-file-5.1.xsd index d6f489639a..5b8a245403 100644 --- a/spring-integration-file/src/main/resources/org/springframework/integration/file/config/spring-integration-file-5.1.xsd +++ b/spring-integration-file/src/main/resources/org/springframework/integration/file/config/spring-integration-file-5.1.xsd @@ -651,6 +651,11 @@ Only files matching this regular expression will be picked up by this adapter. + + + + diff --git a/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests-context.xml b/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests-context.xml index b67669fa15..3fdd61d77f 100644 --- a/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests-context.xml +++ b/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests-context.xml @@ -13,14 +13,18 @@ http://www.springframework.org/schema/integration/file http://www.springframework.org/schema/integration/file/spring-integration-file.xsd"> - + + + + output-channel="output"> + + diff --git a/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests.java b/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests.java index d45a2a124d..addd4c2e8f 100644 --- a/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests.java +++ b/spring-integration-file/src/test/java/org/springframework/integration/file/config/FileToStringTransformerParserTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,23 +24,26 @@ import org.junit.runner.RunWith; import org.springframework.beans.DirectFieldAccessor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; -import org.springframework.integration.endpoint.EventDrivenConsumer; +import org.springframework.integration.endpoint.PollingConsumer; import org.springframework.integration.file.transformer.FileToStringTransformer; import org.springframework.integration.transformer.MessageTransformingHandler; +import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * @author Mark Fisher * @author Gary Russell + * @author Artem Bilan */ @ContextConfiguration @RunWith(SpringJUnit4ClassRunner.class) +@DirtiesContext public class FileToStringTransformerParserTests { @Autowired @Qualifier("transformer") - EventDrivenConsumer endpoint; + PollingConsumer endpoint; @Test public void checkDeleteFilesValue() { diff --git a/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-5.1.xsd b/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-5.1.xsd index c194bc6dcc..e61349d502 100644 --- a/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-5.1.xsd +++ b/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-5.1.xsd @@ -1387,6 +1387,7 @@ + diff --git a/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests-context.xml b/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests-context.xml index 67dfd00ce7..b954202549 100644 --- a/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests-context.xml +++ b/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests-context.xml @@ -1,7 +1,7 @@ + + + + + @@ -21,8 +26,8 @@ - - - + + + diff --git a/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests.java b/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests.java index 238c458647..96f3c5a854 100644 --- a/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests.java +++ b/spring-integration-jms/src/test/java/org/springframework/integration/jms/config/JmsHeaderEnricherTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; * @author Mark Fisher * @author Oleg Zhurakousky * @author Gary Russell + * @author Artem Bilan */ @ContextConfiguration @RunWith(SpringJUnit4ClassRunner.class) @@ -59,19 +60,19 @@ public class JmsHeaderEnricherTests { @Test // INT-804 public void verifyReplyToValue() throws Exception { - valueTestInput.send(new GenericMessage("test")); - Message result = output.receive(0); - assertEquals(testDestination, result.getHeaders().get(JmsHeaders.REPLY_TO)); + this.valueTestInput.send(new GenericMessage<>("test")); + Message result = output.receive(10_000); + assertEquals(this.testDestination, result.getHeaders().get(JmsHeaders.REPLY_TO)); StubTextMessage jmsMessage = new StubTextMessage(); DefaultJmsHeaderMapper headerMapper = new DefaultJmsHeaderMapper(); headerMapper.fromHeaders(result.getHeaders(), jmsMessage); - assertEquals(testDestination, jmsMessage.getJMSReplyTo()); + assertEquals(this.testDestination, jmsMessage.getJMSReplyTo()); } @Test public void verifyCorrelationIdValue() throws Exception { - valueTestInput.send(new GenericMessage("test")); - Message result = output.receive(0); + this.valueTestInput.send(new GenericMessage<>("test")); + Message result = output.receive(10_000); assertEquals("ABC", result.getHeaders().get(JmsHeaders.CORRELATION_ID)); StubTextMessage jmsMessage = new StubTextMessage(); DefaultJmsHeaderMapper headerMapper = new DefaultJmsHeaderMapper(); @@ -81,7 +82,7 @@ public class JmsHeaderEnricherTests { @Test // see INT-1122 and INT-1123 public void verifyCorrelationIdExpression() throws Exception { - expressionTestInput.send(new GenericMessage("test")); + this.expressionTestInput.send(new GenericMessage<>("test")); Message result = output.receive(0); assertEquals(123, result.getHeaders().get(JmsHeaders.CORRELATION_ID)); StubTextMessage jmsMessage = new StubTextMessage(); diff --git a/spring-integration-mail/src/main/resources/org/springframework/integration/mail/config/spring-integration-mail-5.1.xsd b/spring-integration-mail/src/main/resources/org/springframework/integration/mail/config/spring-integration-mail-5.1.xsd index eca6284670..219cbaca32 100644 --- a/spring-integration-mail/src/main/resources/org/springframework/integration/mail/config/spring-integration-mail-5.1.xsd +++ b/spring-integration-mail/src/main/resources/org/springframework/integration/mail/config/spring-integration-mail-5.1.xsd @@ -298,6 +298,9 @@ + + + @@ -314,7 +317,7 @@ - + @@ -324,6 +327,7 @@ + diff --git a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests-context.xml b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests-context.xml index 878daec223..9dc8ad9210 100644 --- a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests-context.xml +++ b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests-context.xml @@ -2,8 +2,11 @@ @@ -18,7 +21,12 @@ + + + + + diff --git a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests.java b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests.java index b676f23c50..6387e573c1 100644 --- a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests.java +++ b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailHeaderEnricherTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,14 +30,17 @@ import org.springframework.integration.mail.MailHeaders; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.support.GenericMessage; +import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * @author Mark Fisher + * @author Artem Bilan */ @ContextConfiguration @RunWith(SpringJUnit4ClassRunner.class) +@DirtiesContext public class MailHeaderEnricherTests { @Autowired @@ -51,8 +54,8 @@ public class MailHeaderEnricherTests { @Test public void literalValues() { MessagingTemplate template = new MessagingTemplate(); - template.setDefaultDestination(literalValuesInput); - Message result = template.sendAndReceive(new GenericMessage("test")); + template.setDefaultDestination(this.literalValuesInput); + Message result = template.sendAndReceive(new GenericMessage<>("test")); Map headers = result.getHeaders(); assertEquals("test.to", headers.get(MailHeaders.TO)); assertEquals("test.cc", headers.get(MailHeaders.CC)); @@ -67,8 +70,8 @@ public class MailHeaderEnricherTests { @Test public void expressions() { MessagingTemplate template = new MessagingTemplate(); - template.setDefaultDestination(expressionsInput); - Message result = template.sendAndReceive(new GenericMessage("foo")); + template.setDefaultDestination(this.expressionsInput); + Message result = template.sendAndReceive(new GenericMessage<>("foo")); Map headers = result.getHeaders(); assertEquals("foo.to", headers.get(MailHeaders.TO)); assertEquals("foo.cc", headers.get(MailHeaders.CC)); diff --git a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailToStringTransformerParserTests.java b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailToStringTransformerParserTests.java index 90c9892004..45da219d28 100644 --- a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailToStringTransformerParserTests.java +++ b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/MailToStringTransformerParserTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2014 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,7 +22,7 @@ import static org.junit.Assert.assertTrue; import javax.mail.internet.MimeMessage; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.mockito.Mockito; import org.springframework.beans.factory.BeanDefinitionStoreException; @@ -38,47 +38,52 @@ import org.springframework.messaging.support.GenericMessage; * @author Mark Fisher * @author Artem Bilan */ -public class MailToStringTransformerParserTests { +class MailToStringTransformerParserTests { @Test - public void topLevelTransformer() throws Exception { - ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( - "mailToStringTransformerParserTests.xml", this.getClass()); - MessageChannel input = new BeanFactoryChannelResolver(context).resolveDestination("input"); - PollableChannel output = (PollableChannel) new BeanFactoryChannelResolver(context).resolveDestination("output"); - MimeMessage mimeMessage = Mockito.mock(MimeMessage.class); - Mockito.when(mimeMessage.getContent()).thenReturn("hello"); - input.send(new GenericMessage(mimeMessage)); - Message result = output.receive(0); - assertNotNull(result); - assertEquals("hello", result.getPayload()); - Mockito.verify(mimeMessage).getContent(); + void topLevelTransformer() throws Exception { + try (ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("mailToStringTransformerParserTests.xml", this.getClass());) { + + MessageChannel input = new BeanFactoryChannelResolver(context).resolveDestination("input"); + PollableChannel output = + (PollableChannel) new BeanFactoryChannelResolver(context).resolveDestination("output"); + MimeMessage mimeMessage = Mockito.mock(MimeMessage.class); + Mockito.when(mimeMessage.getContent()).thenReturn("hello"); + input.send(new GenericMessage(mimeMessage)); + Message result = output.receive(10_000); + assertNotNull(result); + assertEquals("hello", result.getPayload()); + Mockito.verify(mimeMessage).getContent(); + } } @Test - public void transformerWithinChain() throws Exception { - ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( - "mailToStringTransformerWithinChain.xml", this.getClass()); - MessageChannel input = new BeanFactoryChannelResolver(context).resolveDestination("input"); - PollableChannel output = (PollableChannel) new BeanFactoryChannelResolver(context).resolveDestination("output"); - MimeMessage mimeMessage = Mockito.mock(MimeMessage.class); - Mockito.when(mimeMessage.getContent()).thenReturn("foo"); - input.send(new GenericMessage(mimeMessage)); - Message result = output.receive(0); - assertNotNull(result); - assertEquals("FOO!!!", result.getPayload()); - Mockito.verify(mimeMessage).getContent(); + void transformerWithinChain() throws Exception { + try (ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("mailToStringTransformerWithinChain.xml", this.getClass());) { + + MessageChannel input = new BeanFactoryChannelResolver(context).resolveDestination("input"); + PollableChannel output = + (PollableChannel) new BeanFactoryChannelResolver(context).resolveDestination("output"); + MimeMessage mimeMessage = Mockito.mock(MimeMessage.class); + Mockito.when(mimeMessage.getContent()).thenReturn("foo"); + input.send(new GenericMessage(mimeMessage)); + Message result = output.receive(0); + assertNotNull(result); + assertEquals("FOO!!!", result.getPayload()); + Mockito.verify(mimeMessage).getContent(); + } } - @Test(expected = BeanDefinitionStoreException.class) - public void topLevelTransformerMissingInput() { + @Test + void topLevelTransformerMissingInput() { try { new ClassPathXmlApplicationContext("mailToStringTransformerWithoutInputChannel.xml", this.getClass()) .close(); } catch (BeanDefinitionStoreException e) { assertTrue(e.getMessage().contains("input-channel")); - throw e; } } diff --git a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/mailToStringTransformerParserTests.xml b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/mailToStringTransformerParserTests.xml index c2d8cfc91a..a2a62079b1 100644 --- a/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/mailToStringTransformerParserTests.xml +++ b/spring-integration-mail/src/test/java/org/springframework/integration/mail/config/mailToStringTransformerParserTests.xml @@ -2,20 +2,24 @@ + http://www.springframework.org/schema/integration/mail/spring-integration-mail.xsd"> - + + + - - - + + + - + + + diff --git a/spring-integration-mongodb/src/main/resources/org/springframework/integration/mongodb/config/spring-integration-mongodb-5.1.xsd b/spring-integration-mongodb/src/main/resources/org/springframework/integration/mongodb/config/spring-integration-mongodb-5.1.xsd index 58e9a157cc..2567357a9b 100644 --- a/spring-integration-mongodb/src/main/resources/org/springframework/integration/mongodb/config/spring-integration-mongodb-5.1.xsd +++ b/spring-integration-mongodb/src/main/resources/org/springframework/integration/mongodb/config/spring-integration-mongodb-5.1.xsd @@ -116,6 +116,11 @@ + + + + diff --git a/spring-integration-mongodb/src/test/java/org/springframework/integration/mongodb/config/MongoDbOutboundGatewayParserTests-context.xml b/spring-integration-mongodb/src/test/java/org/springframework/integration/mongodb/config/MongoDbOutboundGatewayParserTests-context.xml index f622f5ac27..3ca6b5e08c 100644 --- a/spring-integration-mongodb/src/test/java/org/springframework/integration/mongodb/config/MongoDbOutboundGatewayParserTests-context.xml +++ b/spring-integration-mongodb/src/test/java/org/springframework/integration/mongodb/config/MongoDbOutboundGatewayParserTests-context.xml @@ -8,13 +8,23 @@ http://www.springframework.org/schema/integration/mongodb http://www.springframework.org/schema/integration/mongodb/spring-integration-mongodb.xsd"> + + + + + + request-channel="inQueue" + reply-channel="out"> + + + + + advices = TestUtils.getPropertyValue(handler, "adviceChain", List.class); + assertThat(advices.get(0), Matchers.instanceOf(RequestHandlerRetryAdvice.class)); } @Test diff --git a/spring-integration-ws/src/main/resources/org/springframework/integration/ws/config/spring-integration-ws-5.1.xsd b/spring-integration-ws/src/main/resources/org/springframework/integration/ws/config/spring-integration-ws-5.1.xsd index c276b26e29..d0f9e46aea 100644 --- a/spring-integration-ws/src/main/resources/org/springframework/integration/ws/config/spring-integration-ws-5.1.xsd +++ b/spring-integration-ws/src/main/resources/org/springframework/integration/ws/config/spring-integration-ws-5.1.xsd @@ -465,8 +465,9 @@ this list can also be simple patterns to be matched against the header names (e. - + + diff --git a/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests-context.xml b/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests-context.xml index 823b96d6a0..32578bcf89 100644 --- a/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests-context.xml +++ b/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests-context.xml @@ -1,14 +1,23 @@ + + + + + + diff --git a/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests.java b/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests.java index cdf2a939b8..6b32e7c0d1 100644 --- a/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests.java +++ b/spring-integration-ws/src/test/java/org/springframework/integration/ws/config/WebServiceHeaderEnricherTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,15 +30,19 @@ import org.springframework.integration.ws.WebServiceHeaders; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.support.GenericMessage; +import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * @author Mark Fisher + * @author Artem Bilan + * * @since 2.0 */ @ContextConfiguration @RunWith(SpringJUnit4ClassRunner.class) +@DirtiesContext public class WebServiceHeaderEnricherTests { @Autowired @@ -53,7 +57,7 @@ public class WebServiceHeaderEnricherTests { public void literalValue() { MessagingTemplate template = new MessagingTemplate(); template.setDefaultDestination(literalValueInput); - Message result = template.sendAndReceive(new GenericMessage("foo")); + Message result = template.sendAndReceive(new GenericMessage<>("foo")); Map headers = result.getHeaders(); assertEquals("http://test", headers.get(WebServiceHeaders.SOAP_ACTION)); } @@ -62,7 +66,7 @@ public class WebServiceHeaderEnricherTests { public void expression() { MessagingTemplate template = new MessagingTemplate(); template.setDefaultDestination(expressionInput); - Message result = template.sendAndReceive(new GenericMessage("foo")); + Message result = template.sendAndReceive(new GenericMessage<>("foo")); Map headers = result.getHeaders(); assertEquals("http://foo", headers.get(WebServiceHeaders.SOAP_ACTION)); } diff --git a/spring-integration-xml/src/main/resources/org/springframework/integration/xml/config/spring-integration-xml-5.1.xsd b/spring-integration-xml/src/main/resources/org/springframework/integration/xml/config/spring-integration-xml-5.1.xsd index 786f7b50a4..a2e794f0ef 100644 --- a/spring-integration-xml/src/main/resources/org/springframework/integration/xml/config/spring-integration-xml-5.1.xsd +++ b/spring-integration-xml/src/main/resources/org/springframework/integration/xml/config/spring-integration-xml-5.1.xsd @@ -28,6 +28,10 @@ + + + @@ -83,6 +87,10 @@ + + + @@ -125,6 +133,8 @@ ]]> + @@ -262,6 +272,10 @@ + + + @@ -339,8 +353,10 @@ - + + @@ -480,8 +496,8 @@ - - + + + @@ -713,7 +731,9 @@ - + + @@ -842,7 +862,8 @@ - + + diff --git a/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-5.1.xsd b/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-5.1.xsd index f8e2c73872..d6deefa045 100644 --- a/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-5.1.xsd +++ b/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-5.1.xsd @@ -292,7 +292,7 @@ - + @@ -308,6 +308,7 @@ + diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml index b992444cb1..de120022b1 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml @@ -8,11 +8,15 @@ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration.xsd"> - + + + + + diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java index bebde8a047..68498b3b98 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,22 +18,28 @@ package org.springframework.integration.xmpp.config; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -import static org.mockito.Mockito.doAnswer; +import static org.junit.Assert.assertTrue; +import static org.mockito.BDDMockito.willAnswer; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; + import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mockito; -import org.springframework.beans.factory.annotation.Value; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.core.MessagingTemplate; import org.springframework.integration.support.MessageBuilder; import org.springframework.integration.xmpp.XmppHeaders; import org.springframework.messaging.Message; +import org.springframework.messaging.MessageChannel; import org.springframework.messaging.MessageHandler; +import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -41,32 +47,39 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; * @author Mark Fisher * @author Josh Long * @author Gunnar Hillert + * @author Artem Bilan + * * @since 2.0 */ @ContextConfiguration @RunWith(SpringJUnit4ClassRunner.class) +@DirtiesContext public class XmppHeaderEnricherParserTests { - @Value("#{input}") - private DirectChannel input; + @Autowired + private MessageChannel input; - @Value("#{output}") + @Autowired private DirectChannel output; - @SuppressWarnings("rawtypes") @Test - public void to() { + public void to() throws InterruptedException { MessagingTemplate messagingTemplate = new MessagingTemplate(); + CountDownLatch callLatch = new CountDownLatch(1); MessageHandler handler = mock(MessageHandler.class); - doAnswer(invocation -> { + willAnswer(invocation -> { Message message = invocation.getArgument(0); String chatToUser = (String) message.getHeaders().get(XmppHeaders.TO); assertNotNull(chatToUser); assertEquals("test1@example.org", chatToUser); + callLatch.countDown(); return null; - }).when(handler).handleMessage(Mockito.any(Message.class)); - output.subscribe(handler); - messagingTemplate.send(input, MessageBuilder.withPayload("foo").build()); + }) + .given(handler) + .handleMessage(Mockito.any(Message.class)); + this.output.subscribe(handler); + messagingTemplate.send(this.input, MessageBuilder.withPayload("foo").build()); + assertTrue(callLatch.await(10, TimeUnit.SECONDS)); verify(handler, times(1)).handleMessage(Mockito.any(Message.class)); }