Skip to content

Commit 029f64e

Browse files
gnodetclaude
andcommitted
CAMEL-22549: Add tests, update existing tests, and document upgrade guide
Update tests to use ExchangeHelper methods instead of deprecated getOut/hasOut/setOut. Add new tests for createResponse() and createResponseFromInput() helpers. Document the new ExchangeHelper response methods in the 4.19 upgrade guide. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 3675b50 commit 029f64e

35 files changed

Lines changed: 164 additions & 80 deletions

File tree

components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdProducerConsumerInOutTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,6 @@ public void setupResources() {
126126
}
127127

128128
@Override
129-
@SuppressWarnings("deprecation")
130129
protected RouteBuilder createRouteBuilder() {
131130
return new RouteBuilder() {
132131
@Override
@@ -140,11 +139,11 @@ public void configure() throws URISyntaxException {
140139

141140
from(uri)
142141
.setExchangePattern(ExchangePattern.InOut)
143-
.process(exchange -> exchange.getOut().setBody("reply: " + exchange.getIn().getBody()));
142+
.process(exchange -> exchange.getMessage().setBody("reply: " + exchange.getIn().getBody()));
144143

145144
from(uriSSL)
146145
.setExchangePattern(ExchangePattern.InOut)
147-
.process(exchange -> exchange.getOut().setBody("reply SSL: " + exchange.getIn().getBody()));
146+
.process(exchange -> exchange.getMessage().setBody("reply SSL: " + exchange.getIn().getBody()));
148147
}
149148
};
150149
}

components/camel-cxf/camel-cxf-spring-soap/src/test/java/org/apache/camel/component/cxf/CxfDispatchMessageTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,14 @@
2525
import org.apache.camel.Exchange;
2626
import org.apache.camel.Processor;
2727
import org.apache.camel.component.cxf.common.message.CxfConstants;
28+
import org.apache.camel.support.ExchangeHelper;
2829
import org.junit.jupiter.api.Test;
2930
import org.springframework.context.support.AbstractApplicationContext;
3031
import org.springframework.context.support.ClassPathXmlApplicationContext;
3132

3233
import static org.junit.jupiter.api.Assertions.assertEquals;
34+
import static org.junit.jupiter.api.Assertions.assertFalse;
3335
import static org.junit.jupiter.api.Assertions.assertNotNull;
34-
import static org.junit.jupiter.api.Assertions.assertNull;
3536
import static org.junit.jupiter.api.Assertions.assertTrue;
3637

3738
/**
@@ -63,10 +64,7 @@ public void testDipatchMessageOneway() throws Exception {
6364
Exchange exchange = sendJaxWsDispatchMessage(name, true);
6465
assertEquals(false, exchange.isFailed(), "The request should be handled sucessfully");
6566

66-
org.apache.camel.Message response = exchange.getOut();
67-
assertNotNull(response, "The response message must not be null");
68-
69-
assertNull(response.getBody(), "The response body must be null");
67+
assertFalse(ExchangeHelper.hasResponse(exchange), "The oneway response must not have a response message");
7068
}
7169

7270
protected Exchange sendJaxWsDispatchMessage(final String name, final boolean oneway) {

components/camel-cxf/camel-cxf-spring-soap/src/test/java/org/apache/camel/component/cxf/CxfDispatchPayloadTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,15 @@
2828
import org.apache.camel.component.cxf.common.CxfPayload;
2929
import org.apache.camel.component.cxf.common.message.CxfConstants;
3030
import org.apache.camel.component.cxf.converter.CxfPayloadConverter;
31+
import org.apache.camel.support.ExchangeHelper;
3132
import org.apache.cxf.binding.soap.SoapHeader;
3233
import org.junit.jupiter.api.Test;
3334
import org.springframework.context.support.AbstractApplicationContext;
3435
import org.springframework.context.support.ClassPathXmlApplicationContext;
3536

3637
import static org.junit.jupiter.api.Assertions.assertEquals;
38+
import static org.junit.jupiter.api.Assertions.assertFalse;
3739
import static org.junit.jupiter.api.Assertions.assertNotNull;
38-
import static org.junit.jupiter.api.Assertions.assertNull;
3940
import static org.junit.jupiter.api.Assertions.assertTrue;
4041

4142
/**
@@ -67,10 +68,7 @@ public void testDispatchPayloadOneway() throws Exception {
6768
Exchange exchange = sendJaxWsDispatchPayload(name, true);
6869
assertEquals(false, exchange.isFailed(), "The request should be handled sucessfully");
6970

70-
org.apache.camel.Message response = exchange.getOut();
71-
assertNotNull(response, "The response must not be null");
72-
73-
assertNull(response.getBody(), "The response must be null");
71+
assertFalse(ExchangeHelper.hasResponse(exchange), "The oneway response must not have a response message");
7472
}
7573

7674
private Exchange sendJaxWsDispatchPayload(final String name, final boolean oneway) {

components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7MLLPNettyDecoderResourceLeakTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public void configure() {
5050
.process(new Processor() {
5151
public void process(Exchange exchange) throws Exception {
5252
Message input = exchange.getIn().getBody(Message.class);
53-
exchange.getOut().setBody(input.generateACK());
53+
exchange.getMessage().setBody(input.generateACK());
5454
}
5555
}).to("mock:result");
5656
}

components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7MLLPNettyRouteToTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public void process(Exchange exchange) throws Exception {
7373
assertEquals("0101701234", qrd.getWhoSubjectFilter(0).getIDNumber().getValue());
7474

7575
Message response = createHL7AsMessage();
76-
exchange.getOut().setBody(response);
76+
exchange.getMessage().setBody(response);
7777
}
7878
});
7979
}

components/camel-jackson/src/test/java/org/apache/camel/component/jackson/JacksonMarshalContentTypeHeaderTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import static org.junit.jupiter.api.Assertions.assertEquals;
2929
import static org.junit.jupiter.api.Assertions.assertNotNull;
3030
import static org.junit.jupiter.api.Assertions.assertNull;
31-
import static org.junit.jupiter.api.Assertions.assertTrue;
3231

3332
public class JacksonMarshalContentTypeHeaderTest extends CamelTestSupport {
3433

@@ -40,7 +39,6 @@ public void testYes() {
4039
Exchange out = template.request("direct:yes", exchange -> exchange.getIn().setBody(in));
4140

4241
assertNotNull(out);
43-
assertTrue(out.hasOut());
4442
assertEquals("application/json", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
4543
}
4644

@@ -52,7 +50,6 @@ public void testYes2() {
5250
Exchange out = template.request("direct:yes2", exchange -> exchange.getIn().setBody(in));
5351

5452
assertNotNull(out);
55-
assertTrue(out.hasOut());
5653
assertEquals("application/json", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
5754
}
5855

@@ -64,7 +61,6 @@ public void testNo() {
6461
Exchange out = template.request("direct:no", exchange -> exchange.getIn().setBody(in));
6562

6663
assertNotNull(out);
67-
assertTrue(out.hasOut());
6864
assertNull(out.getMessage().getHeader(Exchange.CONTENT_TYPE));
6965
}
7066

components/camel-jackson3/src/test/java/org/apache/camel/component/jackson3/JacksonMarshalContentTypeHeaderTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import static org.junit.jupiter.api.Assertions.assertEquals;
2929
import static org.junit.jupiter.api.Assertions.assertNotNull;
3030
import static org.junit.jupiter.api.Assertions.assertNull;
31-
import static org.junit.jupiter.api.Assertions.assertTrue;
3231

3332
public class JacksonMarshalContentTypeHeaderTest extends CamelTestSupport {
3433

@@ -40,7 +39,6 @@ public void testYes() {
4039
Exchange out = template.request("direct:yes", exchange -> exchange.getIn().setBody(in));
4140

4241
assertNotNull(out);
43-
assertTrue(out.hasOut());
4442
assertEquals("application/json", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
4543
}
4644

@@ -52,7 +50,6 @@ public void testYes2() {
5250
Exchange out = template.request("direct:yes2", exchange -> exchange.getIn().setBody(in));
5351

5452
assertNotNull(out);
55-
assertTrue(out.hasOut());
5653
assertEquals("application/json", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
5754
}
5855

@@ -64,7 +61,6 @@ public void testNo() {
6461
Exchange out = template.request("direct:no", exchange -> exchange.getIn().setBody(in));
6562

6663
assertNotNull(out);
67-
assertTrue(out.hasOut());
6864
assertNull(out.getMessage().getHeader(Exchange.CONTENT_TYPE));
6965
}
7066

components/camel-jackson3xml/src/test/java/org/apache/camel/component/jackson3xml/JacksonMarshalContentTypeHeaderTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import static org.junit.jupiter.api.Assertions.assertEquals;
2929
import static org.junit.jupiter.api.Assertions.assertNotNull;
3030
import static org.junit.jupiter.api.Assertions.assertNull;
31-
import static org.junit.jupiter.api.Assertions.assertTrue;
3231

3332
public class JacksonMarshalContentTypeHeaderTest extends CamelTestSupport {
3433

@@ -45,7 +44,6 @@ public void process(Exchange exchange) {
4544
});
4645

4746
assertNotNull(out);
48-
assertTrue(out.hasOut());
4947
assertEquals("application/xml", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
5048
}
5149

@@ -62,7 +60,6 @@ public void process(Exchange exchange) {
6260
});
6361

6462
assertNotNull(out);
65-
assertTrue(out.hasOut());
6663
assertEquals("application/xml", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
6764
}
6865

@@ -79,7 +76,6 @@ public void process(Exchange exchange) {
7976
});
8077

8178
assertNotNull(out);
82-
assertTrue(out.hasOut());
8379
assertNull(out.getMessage().getHeader(Exchange.CONTENT_TYPE));
8480
}
8581

components/camel-jacksonxml/src/test/java/org/apache/camel/component/jacksonxml/JacksonMarshalContentTypeHeaderTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import static org.junit.jupiter.api.Assertions.assertEquals;
2929
import static org.junit.jupiter.api.Assertions.assertNotNull;
3030
import static org.junit.jupiter.api.Assertions.assertNull;
31-
import static org.junit.jupiter.api.Assertions.assertTrue;
3231

3332
public class JacksonMarshalContentTypeHeaderTest extends CamelTestSupport {
3433

@@ -45,7 +44,6 @@ public void process(Exchange exchange) {
4544
});
4645

4746
assertNotNull(out);
48-
assertTrue(out.hasOut());
4947
assertEquals("application/xml", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
5048
}
5149

@@ -62,7 +60,6 @@ public void process(Exchange exchange) {
6260
});
6361

6462
assertNotNull(out);
65-
assertTrue(out.hasOut());
6663
assertEquals("application/xml", out.getMessage().getHeader(Exchange.CONTENT_TYPE));
6764
}
6865

@@ -79,7 +76,6 @@ public void process(Exchange exchange) {
7976
});
8077

8178
assertNotNull(out);
82-
assertTrue(out.hasOut());
8379
assertNull(out.getMessage().getHeader(Exchange.CONTENT_TYPE));
8480
}
8581

components/camel-jcr/src/test/java/org/apache/camel/component/jcr/JcrAuthLoginFailureTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,11 @@
2020

2121
import org.apache.camel.Exchange;
2222
import org.apache.camel.builder.RouteBuilder;
23+
import org.apache.camel.support.ExchangeHelper;
2324
import org.junit.jupiter.api.Test;
2425

26+
import static org.junit.jupiter.api.Assertions.assertFalse;
2527
import static org.junit.jupiter.api.Assertions.assertNotNull;
26-
import static org.junit.jupiter.api.Assertions.assertNull;
2728
import static org.junit.jupiter.api.Assertions.assertTrue;
2829

2930
public class JcrAuthLoginFailureTest extends JcrAuthTestBase {
@@ -33,8 +34,7 @@ public void testCreateNodeWithAuthentication() {
3334
Exchange exchange = createExchangeWithBody("<message>hello!</message>");
3435
Exchange out = template.send("direct:a", exchange);
3536
assertNotNull(out);
36-
String uuid = out.getOut().getBody(String.class);
37-
assertNull(uuid, "Expected body to be null, found JCR node UUID");
37+
assertFalse(ExchangeHelper.hasResponse(out), "Should not have a response on login failure");
3838
assertTrue(out.getException() instanceof LoginException, "Wrong exception type");
3939
}
4040

0 commit comments

Comments
 (0)