You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2022/01/10 11:15:02 UTC
[camel] 01/06: CAMEL-17460: Remove camel-spring-javaconfig which has been deprecated for a long time.
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 146180623aef7f58348194ff8143f98cf5c94b07
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Jan 10 11:49:28 2022 +0100
CAMEL-17460: Remove camel-spring-javaconfig which has been deprecated for a long time.
---
components/camel-bindy/pom.xml | 5 -
.../BindySimpleFixedLengthObjectMarshallTest.java | 270 ---------------------
components/camel-cm-sms/pom.xml | 8 -
.../org/apache/camel/component/cm/test/CMTest.java | 63 ++---
.../component/cm/test/CamelTestConfiguration.java | 66 +++--
components/camel-metrics/pom.xml | 5 -
.../camel/component/metrics/CounterRouteTest.java | 92 ++++---
.../camel/component/metrics/GaugeRouteTest.java | 163 -------------
.../component/metrics/HistogramRouteTest.java | 64 +++--
.../camel/component/metrics/MeterRouteTest.java | 73 +++---
.../metrics/MetricComponentSpringTest.java | 76 +++---
.../camel/component/metrics/TimerRouteTest.java | 72 +++---
components/camel-micrometer/pom.xml | 8 -
.../component/micrometer/CounterRouteTest.java | 84 +++----
.../micrometer/DistributionSummaryRouteTest.java | 62 ++---
.../micrometer/MetricComponentSpringTest.java | 51 ++--
.../camel/component/micrometer/TimerRouteTest.java | 94 +++----
components/camel-spring-batch/pom.xml | 5 -
.../spring/batch/SpringBatchJobRegistryTest.java | 163 -------------
19 files changed, 347 insertions(+), 1077 deletions(-)
diff --git a/components/camel-bindy/pom.xml b/components/camel-bindy/pom.xml
index fe2e1b9..369f075 100644
--- a/components/camel-bindy/pom.xml
+++ b/components/camel-bindy/pom.xml
@@ -60,11 +60,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.apache.camel</groupId>
- <artifactId>camel-spring-javaconfig</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<scope>test</scope>
diff --git a/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/marshall/simple/BindySimpleFixedLengthObjectMarshallTest.java b/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/marshall/simple/BindySimpleFixedLengthObjectMarshallTest.java
deleted file mode 100644
index 2782833..0000000
--- a/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/marshall/simple/BindySimpleFixedLengthObjectMarshallTest.java
+++ /dev/null
@@ -1,270 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.dataformat.bindy.fixed.marshall.simple;
-
-import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.List;
-
-import org.apache.camel.EndpointInject;
-import org.apache.camel.Produce;
-import org.apache.camel.ProducerTemplate;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.dataformat.bindy.annotation.DataField;
-import org.apache.camel.dataformat.bindy.annotation.FixedLengthRecord;
-import org.apache.camel.model.dataformat.BindyDataFormat;
-import org.apache.camel.model.dataformat.BindyType;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
-import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.junit.jupiter.api.Test;
-import org.springframework.context.annotation.Bean;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.ContextConfiguration;
-
-@ContextConfiguration(
- classes = {
- BindySimpleFixedLengthObjectMarshallTest.Configuration.class })
-@CamelSpringTest
-public class BindySimpleFixedLengthObjectMarshallTest {
-
- private static final String URI_MOCK_RESULT = "mock:result";
- private static final String URI_MOCK_ERROR = "mock:error";
- private static final String URI_DIRECT_START = "direct:start";
-
- private String expected;
-
- @Produce(URI_DIRECT_START)
- private ProducerTemplate template;
-
- @EndpointInject(URI_MOCK_RESULT)
- private MockEndpoint result;
-
- @EndpointInject(URI_MOCK_ERROR)
- private MockEndpoint error;
-
- public static class Configuration extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
- public void configure() {
- // default should errors go to mock:error
- errorHandler(deadLetterChannel(URI_MOCK_ERROR).redeliveryDelay(0));
-
- onException(Exception.class).maximumRedeliveries(0).handled(true);
-
- BindyDataFormat bindy = new BindyDataFormat();
- bindy.setLocale("en");
- bindy.setClassType(Order.class);
- bindy.type(BindyType.Fixed);
-
- from(URI_DIRECT_START)
- .marshal(bindy)
- .to(URI_MOCK_RESULT);
- }
- };
- }
- }
-
- @Test
- @DirtiesContext
- public void testMarshallObject() throws Exception {
- expected = "10A9 PaulineM ISINXD12345678BUYShare000002500.45USD01-08-2009\r\n";
- result.expectedBodiesReceived(expected);
- error.expectedMessageCount(0);
-
- template.sendBody(generateModel("Pauline"));
- error.assertIsSatisfied();
- result.assertIsSatisfied();
- }
-
- @Test
- @DirtiesContext
- public void testMarshallList() throws Exception {
- expected = "10A9 PaulineM ISINXD12345678BUYShare000002500.45USD01-08-2009\r\n"
- + "10A9 MarcoolM ISINXD12345678BUYShare000002500.45USD01-08-2009\r\n";
- result.expectedBodiesReceived(expected);
- error.expectedMessageCount(0);
-
- List<Order> list = new ArrayList<>();
- list.add(generateModel("Pauline"));
- list.add(generateModel("Marcool"));
- template.sendBody(list);
- error.assertIsSatisfied();
- result.assertIsSatisfied();
- }
-
- public Order generateModel(String firstName) {
- Order order = new Order();
- order.setOrderNr(10);
- order.setOrderType("BUY");
- order.setClientNr("A9");
- order.setFirstName(firstName);
- order.setLastName("M");
- order.setAmount(new BigDecimal("2500.45"));
- order.setInstrumentCode("ISIN");
- order.setInstrumentNumber("XD12345678");
- order.setInstrumentType("Share");
- order.setCurrency("USD");
-
- Calendar calendar = new GregorianCalendar();
- calendar.set(2009, 7, 1);
- order.setOrderDate(calendar.getTime());
-
- return order;
- }
-
- @FixedLengthRecord(length = 65, paddingChar = ' ')
- public static class Order {
-
- @DataField(pos = 1, length = 2)
- private int orderNr;
-
- @DataField(pos = 3, length = 2)
- private String clientNr;
-
- @DataField(pos = 5, length = 9)
- private String firstName;
-
- @DataField(pos = 14, length = 5, align = "L")
- private String lastName;
-
- @DataField(pos = 19, length = 4)
- private String instrumentCode;
-
- @DataField(pos = 23, length = 10)
- private String instrumentNumber;
-
- @DataField(pos = 33, length = 3)
- private String orderType;
-
- @DataField(pos = 36, length = 5)
- private String instrumentType;
-
- @DataField(pos = 41, precision = 2, length = 12, paddingChar = '0')
- private BigDecimal amount;
-
- @DataField(pos = 53, length = 3)
- private String currency;
-
- @DataField(pos = 56, length = 10, pattern = "dd-MM-yyyy")
- private Date orderDate;
-
- public int getOrderNr() {
- return orderNr;
- }
-
- public void setOrderNr(int orderNr) {
- this.orderNr = orderNr;
- }
-
- public String getClientNr() {
- return clientNr;
- }
-
- public void setClientNr(String clientNr) {
- this.clientNr = clientNr;
- }
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public String getInstrumentCode() {
- return instrumentCode;
- }
-
- public void setInstrumentCode(String instrumentCode) {
- this.instrumentCode = instrumentCode;
- }
-
- public String getInstrumentNumber() {
- return instrumentNumber;
- }
-
- public void setInstrumentNumber(String instrumentNumber) {
- this.instrumentNumber = instrumentNumber;
- }
-
- public String getOrderType() {
- return orderType;
- }
-
- public void setOrderType(String orderType) {
- this.orderType = orderType;
- }
-
- public String getInstrumentType() {
- return instrumentType;
- }
-
- public void setInstrumentType(String instrumentType) {
- this.instrumentType = instrumentType;
- }
-
- public BigDecimal getAmount() {
- return amount;
- }
-
- public void setAmount(BigDecimal amount) {
- this.amount = amount;
- }
-
- public String getCurrency() {
- return currency;
- }
-
- public void setCurrency(String currency) {
- this.currency = currency;
- }
-
- public Date getOrderDate() {
- return orderDate;
- }
-
- public void setOrderDate(Date orderDate) {
- this.orderDate = orderDate;
- }
-
- @Override
- public String toString() {
- return "Model : " + Order.class.getName() + " : " + this.orderNr + ", " + this.orderType + ", "
- + String.valueOf(this.amount) + ", " + this.instrumentCode + ", "
- + this.instrumentNumber + ", " + this.instrumentType + ", " + this.currency + ", " + this.clientNr + ", "
- + this.firstName + ", " + this.lastName + ", "
- + String.valueOf(this.orderDate);
- }
- }
-
-}
diff --git a/components/camel-cm-sms/pom.xml b/components/camel-cm-sms/pom.xml
index d663539..8666229 100644
--- a/components/camel-cm-sms/pom.xml
+++ b/components/camel-cm-sms/pom.xml
@@ -32,9 +32,6 @@
<name>Camel :: CM SMS</name>
<description>Camel CM SMS Gateway Component</description>
- <properties>
- </properties>
-
<dependencies>
<dependency>
@@ -81,11 +78,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.apache.camel</groupId>
- <artifactId>camel-spring-javaconfig</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<scope>test</scope>
diff --git a/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java b/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java
index a0662da..26e4102 100644
--- a/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java
+++ b/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CMTest.java
@@ -21,7 +21,6 @@ import java.security.SecureRandom;
import com.google.i18n.phonenumbers.PhoneNumberUtil;
import com.google.i18n.phonenumbers.PhoneNumberUtil.PhoneNumberFormat;
-import org.apache.camel.CamelContext;
import org.apache.camel.EndpointInject;
import org.apache.camel.Exchange;
import org.apache.camel.InvalidPayloadRuntimeException;
@@ -57,27 +56,14 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationContext;
-import org.springframework.test.context.ContextConfiguration;
-import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
@CamelSpringTest
-@ContextConfiguration(classes = { CamelTestConfiguration.class })
-public class CMTest {
-
- // dependency: camel-spring-javaconfig
+public class CMTest extends CamelTestConfiguration {
private static final Logger LOGGER = LoggerFactory.getLogger(CMTest.class);
- @Autowired
- ApplicationContext applicationContext;
-
- @Autowired
- private CamelContext camelContext;
-
private SecureRandom random = new SecureRandom();
private final PhoneNumberUtil pnu = PhoneNumberUtil.getInstance();
@@ -92,15 +78,14 @@ public class CMTest {
@BeforeEach
public void beforeTest() throws Exception {
mock.reset();
- camelContext.getRouteController().startRoute(CamelTestConfiguration.SIMPLE_ROUTE_ID);
+ context.getRouteController().startRoute(CamelTestConfiguration.SIMPLE_ROUTE_ID);
validNumber = pnu.format(pnu.getExampleNumber("ES"), PhoneNumberFormat.E164);
}
@AfterEach
public void afterTest() {
-
try {
- camelContext.getRouteController().stopRoute(CamelTestConfiguration.SIMPLE_ROUTE_ID);
+ context.getRouteController().stopRoute(CamelTestConfiguration.SIMPLE_ROUTE_ID);
} catch (Exception e) {
LOGGER.error("Exception trying to stop de routes", e);
}
@@ -116,7 +101,7 @@ public class CMTest {
= "cm-sms://sgw01.cm.nl/gateway.ashx?defaultFrom=MyBusiness&defaultMaxNumberOfParts=8&testConnectionOnStartup=true";
assertThrows(ResolveEndpointFailedException.class,
- () -> camelContext.getEndpoint(schemedUri));
+ () -> context.getEndpoint(schemedUri));
}
@Test
@@ -125,7 +110,7 @@ public class CMTest {
= "cm-sms://sgw01.cm.nl/gateway.ashx?defaultFrom=MyBusiness&defaultMaxNumberOfParts=8&testConnectionOnStartup=true";
assertThrows(ResolveEndpointFailedException.class,
- () -> camelContext.getEndpoint(schemedUri));
+ () -> context.getEndpoint(schemedUri));
}
@Test
@@ -133,7 +118,7 @@ public class CMTest {
// cm-sms://sgw01.cm.nl/gateway.ashx?defaultFrom=MyBusiness&defaultMaxNumberOfParts=8&productToken=ea723fd7-da81-4826-89bc-fa7144e71c40&testConnectionOnStartup=true
String schemedUri
= "cm-sms://dummy.sgw01.cm.nl/gateway.ashx?defaultFrom=MyBusiness&defaultMaxNumberOfParts=8&productToken=ea723fd7-da81-4826-89bc-fa7144e71c40&testConnectionOnStartup=true";
- Service service = camelContext.getEndpoint(schemedUri).createProducer();
+ Service service = context.getEndpoint(schemedUri).createProducer();
assertThrows(HostUnavailableException.class,
() -> service.start());
}
@@ -143,7 +128,7 @@ public class CMTest {
// cm-sms://sgw01.cm.nl/gateway.ashx?defaultFrom=MyBusiness&defaultMaxNumberOfParts=8&productToken=ea723fd7-da81-4826-89bc-fa7144e71c40&testConnectionOnStartup=true
String schemedUri = "cm-sms://https://demo.com";
assertThrows(ResolveEndpointFailedException.class,
- () -> camelContext.getEndpoint(schemedUri));
+ () -> context.getEndpoint(schemedUri));
}
/*
@@ -170,7 +155,7 @@ public class CMTest {
// Change sending strategy
CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new NoAccountFoundForProductTokenExceptionSender());
@@ -189,7 +174,7 @@ public class CMTest {
// Change sending strategy
CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new CMResponseExceptionSender());
@@ -204,7 +189,7 @@ public class CMTest {
// Change sending strategy
CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new InsufficientBalanceExceptionSender());
@@ -219,7 +204,7 @@ public class CMTest {
// Change sending strategy
CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new InvalidMSISDNExceptionSender());
@@ -234,7 +219,7 @@ public class CMTest {
// Change sending strategy
CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new InvalidProductTokenExceptionSender());
@@ -249,7 +234,7 @@ public class CMTest {
// Change sending strategy
CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new NoMessageExceptionSender());
@@ -263,8 +248,7 @@ public class CMTest {
public void testNotPhoneNumberFoundException() throws Exception {
// Change sending strategy
- CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ CMEndpoint endpoint = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new NotPhoneNumberFoundExceptionSender());
@@ -278,8 +262,7 @@ public class CMTest {
public void testUnknownErrorException() throws Exception {
// Change sending strategy
- CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ CMEndpoint endpoint = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new UnknownErrorExceptionSender());
@@ -293,8 +276,7 @@ public class CMTest {
public void testUnroutableMessageException() throws Exception {
// Change sending strategy
- CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ CMEndpoint endpoint = (CMEndpoint) context.getEndpoint(getUri());
CMProducer producer = endpoint.createProducer();
producer.setSender(new UnroutableMessageExceptionSender());
@@ -308,23 +290,12 @@ public class CMTest {
public void testCMEndpointIsForProducing() {
// Change sending strategy
- CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
+ CMEndpoint endpoint = (CMEndpoint) context.getEndpoint(getUri());
assertThrows(UnsupportedOperationException.class,
() -> endpoint.createConsumer(null));
}
@Test
- public void testCMEndpointGetHost() {
-
- // Change sending strategy
- CMEndpoint endpoint
- = (CMEndpoint) camelContext.getEndpoint(applicationContext.getBean(CamelTestConfiguration.class).getUri());
- assertEquals(applicationContext.getEnvironment().getRequiredProperty("cm.url"), endpoint.getHost(),
- "Endpoint host and environment property do not match");
- }
-
- @Test
public void testSendInvalidPayload() {
// Body
diff --git a/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CamelTestConfiguration.java b/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CamelTestConfiguration.java
index 96a5dcb..43284e4 100644
--- a/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CamelTestConfiguration.java
+++ b/components/camel-cm-sms/src/test/java/org/apache/camel/component/cm/test/CamelTestConfiguration.java
@@ -16,69 +16,59 @@
*/
package org.apache.camel.component.cm.test;
+import java.io.FileInputStream;
+import java.util.Properties;
+
+import org.apache.camel.CamelContext;
import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.PropertySource;
-import org.springframework.core.env.Environment;
-import org.springframework.util.Assert;
-import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
/**
* Builds a SimpleRoute to send a message to CM GW and CM Uri is built based on properties in a file.
*/
-@Configuration("cmConfig")
-@PropertySource("classpath:/cm-smsgw.properties")
-public class CamelTestConfiguration extends SingleRouteCamelConfiguration {
+public abstract class CamelTestConfiguration extends CamelSpringTestSupport {
public static final String SIMPLE_ROUTE_ID = "simple-route";
private String uri;
@Override
- public RouteBuilder route() {
- return new RouteBuilder() {
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
+ }
- @Override
- public void configure() throws Exception {
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ CamelContext context = super.createCamelContext();
- Assert.hasLength(uri, "The URI string should not be empty or null");
+ loadProperties();
+ context.addRoutes(new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
log.debug("CM Component is an URI based component\nCM URI: {}", uri);
// Route definition
from("direct:sms").to(uri).to("mock:test")
.routeId(SIMPLE_ROUTE_ID);
-
}
- };
- }
+ });
- @Bean
- public LocalValidatorFactoryBean getValidatorFactory() {
- final LocalValidatorFactoryBean localValidatorFactoryBean = new LocalValidatorFactoryBean();
- localValidatorFactoryBean.getValidationPropertyMap()
- .put("hibernate.validator.fail_fast", "true");
- return localValidatorFactoryBean;
+ return context;
}
/**
* Build the URI of the CM Component based on Environmental properties
*/
- @Override
- public final void setApplicationContext(
- final ApplicationContext applicationContext) {
-
- super.setApplicationContext(applicationContext);
-
- final Environment env = applicationContext.getEnvironment();
+ private void loadProperties() throws Exception {
+ Properties prop = new Properties();
+ prop.load(new FileInputStream("src/test/resources/cm-smsgw.properties"));
- final String host = env.getRequiredProperty("cm.url");
- final String productTokenString = env
- .getRequiredProperty("cm.product-token");
- final String sender = env.getRequiredProperty("cm.default-sender");
+ final String host = prop.getProperty("cm.url");
+ final String productTokenString = prop.getProperty("cm.product-token");
+ final String sender = prop.getProperty("cm.default-sender");
final StringBuffer cmUri = new StringBuffer("cm-sms:" + host)
.append("?productToken=").append(productTokenString);
@@ -88,7 +78,7 @@ public class CamelTestConfiguration extends SingleRouteCamelConfiguration {
// Defaults to false
final Boolean testConnectionOnStartup = Boolean.parseBoolean(
- env.getProperty("cm.testConnectionOnStartup", "false"));
+ prop.getProperty("cm.testConnectionOnStartup", "false"));
if (testConnectionOnStartup) {
cmUri.append("&testConnectionOnStartup=")
.append(testConnectionOnStartup.toString());
@@ -96,7 +86,7 @@ public class CamelTestConfiguration extends SingleRouteCamelConfiguration {
// Defaults to 8
final Integer defaultMaxNumberOfParts = Integer
- .parseInt(env.getProperty("defaultMaxNumberOfParts", "8"));
+ .parseInt(prop.getProperty("defaultMaxNumberOfParts", "8"));
cmUri.append("&defaultMaxNumberOfParts=")
.append(defaultMaxNumberOfParts.toString());
diff --git a/components/camel-metrics/pom.xml b/components/camel-metrics/pom.xml
index 499600d..4a77f65 100644
--- a/components/camel-metrics/pom.xml
+++ b/components/camel-metrics/pom.xml
@@ -92,11 +92,6 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-spring-javaconfig</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.camel</groupId>
<artifactId>camel-test-spring-junit5</artifactId>
<scope>test</scope>
</dependency>
diff --git a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/CounterRouteTest.java b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/CounterRouteTest.java
index 1d2bc27..f943fb8 100644
--- a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/CounterRouteTest.java
+++ b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/CounterRouteTest.java
@@ -21,22 +21,21 @@ import java.util.Map;
import com.codahale.metrics.Counter;
import com.codahale.metrics.MetricRegistry;
+import org.apache.camel.CamelContext;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InOrder;
import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.metrics.MetricsComponent.METRIC_REGISTRY_NAME;
import static org.apache.camel.component.metrics.MetricsConstants.HEADER_COUNTER_DECREMENT;
@@ -48,10 +47,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
@CamelSpringTest
-@ContextConfiguration(
- classes = { CounterRouteTest.TestConfig.class })
-@MockEndpoints
-public class CounterRouteTest {
+public class CounterRouteTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -74,49 +70,47 @@ public class CounterRouteTest {
private InOrder inOrder;
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() throws Exception {
- from("direct:in-1")
- .to("metrics:counter:A?increment=5")
- .to("mock:out");
-
- from("direct:in-2")
- .to("metrics:counter:A?decrement=9")
- .to("mock:out");
-
- from("direct:in-3")
- .setHeader(HEADER_COUNTER_INCREMENT, constant(417L))
- .to("metrics:counter:A")
- .to("mock:out");
-
- from("direct:in-4")
- .setHeader(HEADER_COUNTER_INCREMENT, simple("${body.length}"))
- .to("metrics:counter:A")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRIC_REGISTRY_NAME)
- public MetricRegistry getMetricRegistry() {
- return Mockito.mock(MetricRegistry.class);
- }
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
}
- @BeforeEach
- public void setup() {
- // TODO - 12.05.2014, Lauri - is there any better way to set this up?
- mockRegistry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRIC_REGISTRY_NAME, MetricRegistry.class);
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ CamelContext context = super.createCamelContext();
+
+ mockRegistry = Mockito.mock(MetricRegistry.class);
+ context.getRegistry().bind(METRIC_REGISTRY_NAME, mockRegistry);
mockCounter = mock(Counter.class);
inOrder = Mockito.inOrder(mockRegistry, mockCounter);
+
+ return context;
+ }
+
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in-1")
+ .to("metrics:counter:A?increment=5")
+ .to("mock:out");
+
+ from("direct:in-2")
+ .to("metrics:counter:A?decrement=9")
+ .to("mock:out");
+
+ from("direct:in-3")
+ .setHeader(HEADER_COUNTER_INCREMENT, constant(417L))
+ .to("metrics:counter:A")
+ .to("mock:out");
+
+ from("direct:in-4")
+ .setHeader(HEADER_COUNTER_INCREMENT, simple("${body.length}"))
+ .to("metrics:counter:A")
+ .to("mock:out");
+ }
+ };
}
@AfterEach
diff --git a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/GaugeRouteTest.java b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/GaugeRouteTest.java
deleted file mode 100644
index ec2d50c..0000000
--- a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/GaugeRouteTest.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.metrics;
-
-import java.util.SortedMap;
-import java.util.TreeMap;
-
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.MetricRegistry;
-import org.apache.camel.EndpointInject;
-import org.apache.camel.Produce;
-import org.apache.camel.ProducerTemplate;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.metrics.GaugeProducer.CamelMetricsGauge;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
-import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.mockito.ArgumentMatcher;
-import org.mockito.Mockito;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.stubbing.Answer;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
-
-import static org.apache.camel.component.metrics.MetricsComponent.METRIC_REGISTRY_NAME;
-import static org.apache.camel.component.metrics.MetricsConstants.HEADER_GAUGE_SUBJECT;
-import static org.apache.camel.component.metrics.MetricsConstants.HEADER_METRIC_NAME;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyString;
-import static org.mockito.Mockito.argThat;
-import static org.mockito.Mockito.eq;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-@CamelSpringTest
-@ContextConfiguration(
- classes = { GaugeRouteTest.TestConfig.class })
-@MockEndpoints
-public class GaugeRouteTest {
-
- private static SortedMap<String, Gauge> mockGauges = new TreeMap<>();
-
- @EndpointInject("mock:out")
- private MockEndpoint endpoint;
-
- @Produce("direct:in-1")
- private ProducerTemplate producer1;
-
- @Produce("direct:in-2")
- private ProducerTemplate producer2;
-
- private MetricRegistry mockRegistry;
-
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() throws Exception {
- from("direct:in-1")
- .to("metrics:gauge:A?subject=#mySubject")
- .to("mock:out");
-
- from("direct:in-2")
- .setHeader(HEADER_METRIC_NAME, constant("B"))
- .setHeader(HEADER_GAUGE_SUBJECT, constant("my overriding subject"))
- .to("metrics:gauge:A?subject=#mySubject")
- .to("mock:out");
-
- }
- };
- }
-
- @Bean(name = METRIC_REGISTRY_NAME)
- public MetricRegistry getMetricRegistry() {
- MetricRegistry registry = Mockito.mock(MetricRegistry.class);
- when(registry.getGauges()).thenReturn(mockGauges);
- when(registry.register(anyString(), any())).then(
- new Answer<CamelMetricsGauge>() {
- @Override
- public CamelMetricsGauge answer(InvocationOnMock invocation) throws Throwable {
- mockGauges.put(invocation.getArgument(0), invocation.getArgument(1));
- return invocation.getArgument(1);
- }
- });
- return registry;
- }
-
- @Bean(name = "mySubject")
- public String getSubject() {
- return "my subject";
- }
- }
-
- @BeforeEach
- public void setup() {
- // TODO - 12.05.2014, Lauri - is there any better way to set this up?
- mockRegistry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRIC_REGISTRY_NAME, MetricRegistry.class);
- }
-
- @AfterEach
- public void tearDown() {
- endpoint.reset();
- mockGauges.clear();
- }
-
- @Test
- public void testDefault() throws Exception {
- endpoint.expectedMessageCount(1);
- producer1.sendBody(new Object());
- endpoint.assertIsSatisfied();
- verify(mockRegistry, times(1)).register(eq("A"), argThat(new ArgumentMatcher<CamelMetricsGauge>() {
- @Override
- public boolean matches(CamelMetricsGauge argument) {
- return "my subject".equals(argument.getValue());
- }
- }));
- }
-
- @Test
- public void testOverride() throws Exception {
- verify(mockRegistry, times(1)).register(eq("A"), argThat(new ArgumentMatcher<CamelMetricsGauge>() {
- @Override
- public boolean matches(CamelMetricsGauge argument) {
- return "my subject".equals(argument.getValue());
- }
- }));
- endpoint.expectedMessageCount(1);
- producer2.sendBody(new Object());
- endpoint.assertIsSatisfied();
- verify(mockRegistry, times(1)).register(eq("B"), argThat(new ArgumentMatcher<CamelMetricsGauge>() {
- @Override
- public boolean matches(CamelMetricsGauge argument) {
- return "my overriding subject".equals(argument.getValue());
- }
- }));
- }
-
-}
diff --git a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/HistogramRouteTest.java b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/HistogramRouteTest.java
index 8692964..10f645f9 100644
--- a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/HistogramRouteTest.java
+++ b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/HistogramRouteTest.java
@@ -18,22 +18,21 @@ package org.apache.camel.component.metrics;
import com.codahale.metrics.Histogram;
import com.codahale.metrics.MetricRegistry;
+import org.apache.camel.CamelContext;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InOrder;
import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.metrics.MetricsComponent.METRIC_REGISTRY_NAME;
import static org.apache.camel.component.metrics.MetricsConstants.HEADER_HISTOGRAM_VALUE;
@@ -43,10 +42,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
@CamelSpringTest
-@ContextConfiguration(
- classes = { HistogramRouteTest.TestConfig.class })
-@MockEndpoints
-public class HistogramRouteTest {
+public class HistogramRouteTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -60,35 +56,33 @@ public class HistogramRouteTest {
private InOrder inOrder;
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() throws Exception {
- from("direct:in")
- .to("metrics:histogram:A?value=332491")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRIC_REGISTRY_NAME)
- public MetricRegistry getMetricRegistry() {
- return Mockito.mock(MetricRegistry.class);
- }
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
}
- @BeforeEach
- public void setup() {
- // TODO - 12.05.2014, Lauri - is there any better way to set this up?
- mockRegistry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRIC_REGISTRY_NAME, MetricRegistry.class);
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ CamelContext context = super.createCamelContext();
+
+ mockRegistry = Mockito.mock(MetricRegistry.class);
+ context.getRegistry().bind(METRIC_REGISTRY_NAME, mockRegistry);
mockHistogram = Mockito.mock(Histogram.class);
inOrder = Mockito.inOrder(mockRegistry, mockHistogram);
+
+ return context;
+ }
+
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in")
+ .to("metrics:histogram:A?value=332491")
+ .to("mock:out");
+ }
+ };
}
@AfterEach
diff --git a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MeterRouteTest.java b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MeterRouteTest.java
index 5cddf95..3d42b0a 100644
--- a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MeterRouteTest.java
+++ b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MeterRouteTest.java
@@ -18,22 +18,21 @@ package org.apache.camel.component.metrics;
import com.codahale.metrics.Meter;
import com.codahale.metrics.MetricRegistry;
+import org.apache.camel.CamelContext;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InOrder;
import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.metrics.MetricsComponent.METRIC_REGISTRY_NAME;
import static org.apache.camel.component.metrics.MetricsConstants.HEADER_METER_MARK;
@@ -43,10 +42,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
@CamelSpringTest
-@ContextConfiguration(
- classes = { MeterRouteTest.TestConfig.class })
-@MockEndpoints
-public class MeterRouteTest {
+public class MeterRouteTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -63,40 +59,39 @@ public class MeterRouteTest {
private InOrder inOrder;
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() throws Exception {
- from("direct:in-1")
- .to("metrics:meter:A?mark=3179")
- .to("mock:out");
-
- from("direct:in-2")
- .to("metrics:meter:A")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRIC_REGISTRY_NAME)
- public MetricRegistry getMetricRegistry() {
- return Mockito.mock(MetricRegistry.class);
- }
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
}
- @BeforeEach
- public void setup() {
- // TODO - 12.05.2014, Lauri - is there any better way to set this up?
- mockRegistry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRIC_REGISTRY_NAME, MetricRegistry.class);
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ CamelContext context = super.createCamelContext();
+
+ mockRegistry = Mockito.mock(MetricRegistry.class);
+ context.getRegistry().bind(METRIC_REGISTRY_NAME, mockRegistry);
+
mockMeter = Mockito.mock(Meter.class);
inOrder = Mockito.inOrder(mockRegistry, mockMeter);
when(mockRegistry.meter("A")).thenReturn(mockMeter);
+
+ return context;
+ }
+
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in-1")
+ .to("metrics:meter:A?mark=3179")
+ .to("mock:out");
+
+ from("direct:in-2")
+ .to("metrics:meter:A")
+ .to("mock:out");
+ }
+ };
}
@AfterEach
diff --git a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MetricComponentSpringTest.java b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MetricComponentSpringTest.java
index 9c46d29..5e536f2 100644
--- a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MetricComponentSpringTest.java
+++ b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/MetricComponentSpringTest.java
@@ -18,29 +18,27 @@ package org.apache.camel.component.metrics;
import com.codahale.metrics.Counter;
import com.codahale.metrics.MetricRegistry;
+import org.apache.camel.CamelContext;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.Test;
import org.mockito.InOrder;
import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
+import static org.apache.camel.component.metrics.MetricsComponent.METRIC_REGISTRY_NAME;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
@CamelSpringTest
-@ContextConfiguration(
- classes = { MetricComponentSpringTest.TestConfig.class })
-@MockEndpoints
-public class MetricComponentSpringTest {
+public class MetricComponentSpringTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -48,36 +46,44 @@ public class MetricComponentSpringTest {
@Produce("direct:in")
private ProducerTemplate producer;
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() throws Exception {
- from("direct:in")
- .to("metrics:counter:A?increment=512")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = MetricsComponent.METRIC_REGISTRY_NAME)
- public MetricRegistry getMetricRegistry() {
- return Mockito.mock(MetricRegistry.class);
- }
+ private MetricRegistry mockRegistry;
+
+ private InOrder inOrder;
+
+ private Counter mockCounter;
+
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
+ }
+
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ CamelContext context = super.createCamelContext();
+
+ mockRegistry = Mockito.mock(MetricRegistry.class);
+ context.getRegistry().bind(METRIC_REGISTRY_NAME, mockRegistry);
+
+ mockCounter = Mockito.mock(Counter.class);
+ inOrder = Mockito.inOrder(mockRegistry, mockCounter);
+
+ return context;
+ }
+
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in")
+ .to("metrics:counter:A?increment=512")
+ .to("mock:out");
+ }
+ };
}
@Test
public void testMetricsRegistryFromCamelRegistry() throws Exception {
- // TODO - 12.05.2014, Lauri - is there any better way to set this up?
- MetricRegistry mockRegistry = endpoint.getCamelContext().getRegistry()
- .lookupByNameAndType(MetricsComponent.METRIC_REGISTRY_NAME, MetricRegistry.class);
- Counter mockCounter = Mockito.mock(Counter.class);
- InOrder inOrder = Mockito.inOrder(mockRegistry, mockCounter);
when(mockRegistry.counter("A")).thenReturn(mockCounter);
endpoint.expectedMessageCount(1);
diff --git a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/TimerRouteTest.java b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/TimerRouteTest.java
index e4a24ee..ca78e35 100644
--- a/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/TimerRouteTest.java
+++ b/components/camel-metrics/src/test/java/org/apache/camel/component/metrics/TimerRouteTest.java
@@ -18,22 +18,21 @@ package org.apache.camel.component.metrics;
import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.Timer;
+import org.apache.camel.CamelContext;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InOrder;
import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.metrics.MetricsComponent.METRIC_REGISTRY_NAME;
import static org.apache.camel.component.metrics.MetricsConstants.HEADER_METRIC_NAME;
@@ -43,10 +42,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
@CamelSpringTest
-@ContextConfiguration(
- classes = { TimerRouteTest.TestConfig.class })
-@MockEndpoints
-public class TimerRouteTest {
+public class TimerRouteTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -63,39 +59,37 @@ public class TimerRouteTest {
private InOrder inOrder;
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() throws Exception {
- from("direct:in-1")
- .to("metrics:timer:A?action=start")
- .to("mock:out");
-
- from("direct:in-2")
- .to("metrics:timer:A")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRIC_REGISTRY_NAME)
- public MetricRegistry getMetricRegistry() {
- return Mockito.mock(MetricRegistry.class);
- }
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in-1")
+ .to("metrics:timer:A?action=start")
+ .to("mock:out");
+
+ from("direct:in-2")
+ .to("metrics:timer:A")
+ .to("mock:out");
+ }
+ };
}
- @BeforeEach
- public void setup() {
- // TODO - 12.05.2014, Lauri - is there any better way to set this up?
- mockRegistry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRIC_REGISTRY_NAME, MetricRegistry.class);
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
+ }
+
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ CamelContext context = super.createCamelContext();
+
+ mockRegistry = Mockito.mock(MetricRegistry.class);
+ context.getRegistry().bind(METRIC_REGISTRY_NAME, mockRegistry);
mockTimer = Mockito.mock(Timer.class);
inOrder = Mockito.inOrder(mockRegistry, mockTimer);
+
+ return context;
}
@AfterEach
diff --git a/components/camel-micrometer/pom.xml b/components/camel-micrometer/pom.xml
index b3d5742..1b5546c 100644
--- a/components/camel-micrometer/pom.xml
+++ b/components/camel-micrometer/pom.xml
@@ -31,9 +31,6 @@
<name>Camel :: Micrometer</name>
<description>Camel Micrometer based monitoring component</description>
- <properties>
- </properties>
-
<dependencies>
<dependency>
@@ -74,11 +71,6 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-spring-javaconfig</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.camel</groupId>
<artifactId>camel-test-spring-junit5</artifactId>
<scope>test</scope>
</dependency>
diff --git a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/CounterRouteTest.java b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/CounterRouteTest.java
index 90c6780..e52a8c9 100644
--- a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/CounterRouteTest.java
+++ b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/CounterRouteTest.java
@@ -19,20 +19,19 @@ package org.apache.camel.component.micrometer;
import io.micrometer.core.instrument.Counter;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.simple.SimpleMeterRegistry;
+import org.apache.camel.BindToRegistry;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.micrometer.MicrometerConstants.HEADER_COUNTER_DECREMENT;
import static org.apache.camel.component.micrometer.MicrometerConstants.HEADER_COUNTER_INCREMENT;
@@ -41,10 +40,7 @@ import static org.apache.camel.component.micrometer.MicrometerConstants.METRICS_
import static org.junit.jupiter.api.Assertions.assertEquals;
@CamelSpringTest
-@ContextConfiguration(
- classes = { CounterRouteTest.TestConfig.class })
-@MockEndpoints
-public class CounterRouteTest {
+public class CounterRouteTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -61,47 +57,37 @@ public class CounterRouteTest {
@Produce("direct:in-4")
private ProducerTemplate producer4;
- private MeterRegistry registry;
-
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() {
- from("direct:in-1")
- .to("micrometer:counter:A?increment=5")
- .to("mock:out");
-
- from("direct:in-2")
- .to("micrometer:counter:B?decrement=9")
- .to("mock:out");
-
- from("direct:in-3")
- .setHeader(HEADER_COUNTER_INCREMENT, constant(417L))
- .to("micrometer:counter:C")
- .to("mock:out");
-
- from("direct:in-4")
- .to("micrometer:counter:D?increment=${body.length}&tags=a=${body.length}")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRICS_REGISTRY_NAME)
- public MeterRegistry getMetricRegistry() {
- return new SimpleMeterRegistry();
- }
+ @BindToRegistry(METRICS_REGISTRY_NAME)
+ private MeterRegistry registry = new SimpleMeterRegistry();
+
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
}
- @BeforeEach
- public void setup() {
- registry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRICS_REGISTRY_NAME, MeterRegistry.class);
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in-1")
+ .to("micrometer:counter:A?increment=5")
+ .to("mock:out");
+
+ from("direct:in-2")
+ .to("micrometer:counter:B?decrement=9")
+ .to("mock:out");
+
+ from("direct:in-3")
+ .setHeader(HEADER_COUNTER_INCREMENT, constant(417L))
+ .to("micrometer:counter:C")
+ .to("mock:out");
+
+ from("direct:in-4")
+ .to("micrometer:counter:D?increment=${body.length}&tags=a=${body.length}")
+ .to("mock:out");
+ }
+ };
}
@AfterEach
diff --git a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/DistributionSummaryRouteTest.java b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/DistributionSummaryRouteTest.java
index 1a7b630..07360c7 100644
--- a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/DistributionSummaryRouteTest.java
+++ b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/DistributionSummaryRouteTest.java
@@ -20,20 +20,19 @@ import io.micrometer.core.instrument.DistributionSummary;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.distribution.HistogramSnapshot;
import io.micrometer.core.instrument.simple.SimpleMeterRegistry;
+import org.apache.camel.BindToRegistry;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.micrometer.MicrometerConstants.HEADER_HISTOGRAM_VALUE;
import static org.apache.camel.component.micrometer.MicrometerConstants.HEADER_METRIC_NAME;
@@ -41,10 +40,7 @@ import static org.apache.camel.component.micrometer.MicrometerConstants.METRICS_
import static org.junit.jupiter.api.Assertions.assertEquals;
@CamelSpringTest
-@ContextConfiguration(
- classes = { DistributionSummaryRouteTest.TestConfig.class })
-@MockEndpoints
-public class DistributionSummaryRouteTest {
+public class DistributionSummaryRouteTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -55,37 +51,27 @@ public class DistributionSummaryRouteTest {
@Produce("direct:in-2")
private ProducerTemplate producer2;
- private MeterRegistry registry;
+ @BindToRegistry(METRICS_REGISTRY_NAME)
+ private MeterRegistry registry = new SimpleMeterRegistry();
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() {
- from("direct:in-1")
- .to("micrometer:summary:A?value=332491")
- .to("mock:out");
- from("direct:in-2")
- .to("micrometer:summary:${body}?value=${header.nextValue}")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRICS_REGISTRY_NAME)
- public MeterRegistry getMetricRegistry() {
- return new SimpleMeterRegistry();
- }
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
}
- @BeforeEach
- public void setup() {
- registry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRICS_REGISTRY_NAME, MeterRegistry.class);
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in-1")
+ .to("micrometer:summary:A?value=332491")
+ .to("mock:out");
+ from("direct:in-2")
+ .to("micrometer:summary:${body}?value=${header.nextValue}")
+ .to("mock:out");
+ }
+ };
}
@AfterEach
diff --git a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/MetricComponentSpringTest.java b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/MetricComponentSpringTest.java
index 6358fc1..f40f15e 100644
--- a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/MetricComponentSpringTest.java
+++ b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/MetricComponentSpringTest.java
@@ -18,31 +18,29 @@ package org.apache.camel.component.micrometer;
import io.micrometer.core.instrument.Counter;
import io.micrometer.core.instrument.MeterRegistry;
+import org.apache.camel.BindToRegistry;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.Test;
import org.mockito.InOrder;
import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
+import static org.apache.camel.component.micrometer.MicrometerConstants.METRICS_REGISTRY_NAME;
import static org.mockito.ArgumentMatchers.anyIterable;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
@CamelSpringTest
-@ContextConfiguration(
- classes = { MetricComponentSpringTest.TestConfig.class })
-@MockEndpoints
-public class MetricComponentSpringTest {
+public class MetricComponentSpringTest extends CamelSpringTestSupport {
@EndpointInject("mock:out")
private MockEndpoint endpoint;
@@ -50,27 +48,24 @@ public class MetricComponentSpringTest {
@Produce("direct:in")
private ProducerTemplate producer;
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
+ @BindToRegistry(METRICS_REGISTRY_NAME)
+ private MeterRegistry registry = Mockito.mock(MeterRegistry.class);
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() {
- from("direct:in")
- .to("micrometer:counter:A?increment=512")
- .to("mock:out");
- }
- };
- }
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
+ }
- @Bean(name = MicrometerConstants.METRICS_REGISTRY_NAME)
- public MeterRegistry getMetricRegistry() {
- return Mockito.mock(MeterRegistry.class);
- }
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in")
+ .to("micrometer:counter:A?increment=512")
+ .to("mock:out");
+ }
+ };
}
@Test
diff --git a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/TimerRouteTest.java b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/TimerRouteTest.java
index 5ca7a4f..ab6ed82 100644
--- a/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/TimerRouteTest.java
+++ b/components/camel-micrometer/src/test/java/org/apache/camel/component/micrometer/TimerRouteTest.java
@@ -21,20 +21,19 @@ import java.util.concurrent.TimeUnit;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.Timer;
import io.micrometer.core.instrument.simple.SimpleMeterRegistry;
+import org.apache.camel.BindToRegistry;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
import org.apache.camel.ProducerTemplate;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
import org.apache.camel.test.spring.junit5.CamelSpringTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
+import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.test.context.ContextConfiguration;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.support.AbstractApplicationContext;
import static org.apache.camel.component.micrometer.MicrometerConstants.HEADER_METRIC_NAME;
import static org.apache.camel.component.micrometer.MicrometerConstants.HEADER_TIMER_ACTION;
@@ -43,10 +42,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
@CamelSpringTest
-@ContextConfiguration(
- classes = { TimerRouteTest.TestConfig.class })
-@MockEndpoints
-public class TimerRouteTest {
+public class TimerRouteTest extends CamelSpringTestSupport {
private static final long DELAY = 20L;
@@ -62,52 +58,42 @@ public class TimerRouteTest {
@Produce("direct:in-3")
private ProducerTemplate producer3;
- private MeterRegistry registry;
-
- @Configuration
- public static class TestConfig extends SingleRouteCamelConfiguration {
-
- @Bean
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
-
- @Override
- public void configure() {
- from("direct:in-1")
- .setHeader(HEADER_METRIC_NAME, constant("B"))
- .to("micrometer:timer:A?action=start")
- .delay(DELAY)
- .setHeader(HEADER_METRIC_NAME, constant("B"))
- .to("micrometer:timer:A?action=stop")
- .to("mock:out");
-
- from("direct:in-2")
- .setHeader(HEADER_TIMER_ACTION, constant(MicrometerTimerAction.start))
- .to("micrometer:timer:A")
- .delay(DELAY)
- .setHeader(HEADER_TIMER_ACTION, constant(MicrometerTimerAction.stop))
- .to("micrometer:timer:A")
- .to("mock:out");
-
- from("direct:in-3")
- .to("micrometer:timer:C?action=start")
- .delay(DELAY)
- .to("micrometer:timer:C?action=stop&tags=a=${body}")
- .to("mock:out");
- }
- };
- }
-
- @Bean(name = METRICS_REGISTRY_NAME)
- public MeterRegistry getMetricRegistry() {
- return new SimpleMeterRegistry();
- }
+ @BindToRegistry(METRICS_REGISTRY_NAME)
+ private MeterRegistry registry = new SimpleMeterRegistry();
+
+ @Override
+ protected RoutesBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:in-1")
+ .setHeader(HEADER_METRIC_NAME, constant("B"))
+ .to("micrometer:timer:A?action=start")
+ .delay(DELAY)
+ .setHeader(HEADER_METRIC_NAME, constant("B"))
+ .to("micrometer:timer:A?action=stop")
+ .to("mock:out");
+
+ from("direct:in-2")
+ .setHeader(HEADER_TIMER_ACTION, constant(MicrometerTimerAction.start))
+ .to("micrometer:timer:A")
+ .delay(DELAY)
+ .setHeader(HEADER_TIMER_ACTION, constant(MicrometerTimerAction.stop))
+ .to("micrometer:timer:A")
+ .to("mock:out");
+
+ from("direct:in-3")
+ .to("micrometer:timer:C?action=start")
+ .delay(DELAY)
+ .to("micrometer:timer:C?action=stop&tags=a=${body}")
+ .to("mock:out");
+ }
+ };
}
- @BeforeEach
- public void setup() {
- registry = endpoint.getCamelContext().getRegistry().lookupByNameAndType(METRICS_REGISTRY_NAME, MeterRegistry.class);
+ @Override
+ protected AbstractApplicationContext createApplicationContext() {
+ return new AnnotationConfigApplicationContext();
}
@AfterEach
diff --git a/components/camel-spring-batch/pom.xml b/components/camel-spring-batch/pom.xml
index 5eb4a91..2a04a63 100644
--- a/components/camel-spring-batch/pom.xml
+++ b/components/camel-spring-batch/pom.xml
@@ -73,10 +73,5 @@
<artifactId>camel-test-spring-junit5</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.apache.camel</groupId>
- <artifactId>camel-spring-javaconfig</artifactId>
- <scope>test</scope>
- </dependency>
</dependencies>
</project>
diff --git a/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchJobRegistryTest.java b/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchJobRegistryTest.java
deleted file mode 100644
index 523d9fa..0000000
--- a/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchJobRegistryTest.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.spring.batch;
-
-import org.apache.camel.ConsumerTemplate;
-import org.apache.camel.EndpointInject;
-import org.apache.camel.ExchangePattern;
-import org.apache.camel.ProducerTemplate;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.component.spring.batch.support.CamelItemProcessor;
-import org.apache.camel.component.spring.batch.support.CamelItemReader;
-import org.apache.camel.component.spring.batch.support.CamelItemWriter;
-import org.apache.camel.component.spring.batch.support.CamelJobExecutionListener;
-import org.apache.camel.spring.javaconfig.SingleRouteCamelConfiguration;
-import org.apache.camel.test.spring.junit5.CamelSpringBootTest;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.springframework.batch.core.Job;
-import org.springframework.batch.core.JobExecutionListener;
-import org.springframework.batch.core.Step;
-import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
-import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
-import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
-import org.springframework.batch.core.configuration.support.ApplicationContextFactory;
-import org.springframework.batch.core.configuration.support.GenericApplicationContextFactory;
-import org.springframework.batch.item.ItemProcessor;
-import org.springframework.batch.item.ItemReader;
-import org.springframework.batch.item.ItemWriter;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Import;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
-
-@CamelSpringBootTest
-@ContextConfiguration(classes = SpringBatchJobRegistryTest.ContextConfig.class)
-public class SpringBatchJobRegistryTest extends AbstractJUnit4SpringContextTests {
-
- @EndpointInject("mock:output")
- MockEndpoint outputEndpoint;
-
- @EndpointInject("mock:jobExecutionEventsQueue")
- MockEndpoint jobExecutionEventsQueueEndpoint;
-
- @Autowired
- ProducerTemplate template;
-
- @Autowired
- ConsumerTemplate consumer;
-
- String[] inputMessages = new String[] { "foo", "bar", "baz", null };
-
- @BeforeEach
- public void setUp() throws Exception {
-
- for (String message : inputMessages) {
- template.sendBody("seda:inputQueue", message);
- }
- }
-
- @DirtiesContext
- @Test
- public void testJobRegistry() throws InterruptedException {
- outputEndpoint.expectedBodiesReceived("Echo foo", "Echo bar", "Echo baz");
-
- template.sendBody("direct:start", "Start batch!");
-
- outputEndpoint.assertIsSatisfied();
- }
-
- @Configuration
- @Import(value = BatchConfig.class)
- public static class ContextConfig extends SingleRouteCamelConfiguration {
- @Override
- public RouteBuilder route() {
- return new RouteBuilder() {
- @Override
- public void configure() {
- from("direct:start").to("spring-batch:echoJob?jobRegistry=#jobRegistry");
- from("direct:processor").setExchangePattern(ExchangePattern.InOut).setBody(simple("Echo ${body}"));
- }
- };
- }
- }
-
- @EnableBatchProcessing(modular = true)
- public static class BatchConfig {
-
- @Bean
- public ApplicationContextFactory testJobs() {
- return new GenericApplicationContextFactory(ChildBatchConfig.class);
- }
- }
-
- @Configuration
- public static class ChildBatchConfig {
-
- @Autowired
- JobBuilderFactory jobs;
-
- @Autowired
- StepBuilderFactory steps;
-
- @Autowired
- ConsumerTemplate consumerTemplate;
-
- @Autowired
- ProducerTemplate producerTemplate;
-
- @Bean
- protected ItemReader<Object> reader() throws Exception {
- return new CamelItemReader<>(consumerTemplate, "seda:inputQueue");
- }
-
- @Bean
- protected ItemWriter<Object> writer() throws Exception {
- return new CamelItemWriter<>(producerTemplate, "mock:output");
- }
-
- @Bean
- protected ItemProcessor<Object, Object> processor() throws Exception {
- return new CamelItemProcessor<>(producerTemplate, "direct:processor");
- }
-
- @Bean
- protected JobExecutionListener jobExecutionListener() throws Exception {
- return new CamelJobExecutionListener(producerTemplate, "mock:jobExecutionEventsQueue");
- }
-
- @Bean
- public Job echoJob() throws Exception {
- return this.jobs.get("echoJob").start(echoStep()).build();
- }
-
- @Bean
- protected Step echoStep() throws Exception {
- return this.steps.get("echoStep")
- .chunk(3)
- .reader(reader())
- .processor(processor())
- .writer(writer())
- .build();
- }
- }
-
-}