package org.foo.search.springbot; import org.apache.camel.CamelContext; import org.apache.camel.Endpoint; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.twitter.TwitterEndpointPolling; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @DirtiesContext @SpringBootApplication @SpringBootTest( classes = { TwitterSearchConnectorTest.TestConfiguration.class } ) public class TwitterSearchConnectorTest { @Autowired private CamelContext camelContext; @Test public void testConfiguration() throws Exception { TwitterEndpointPolling twitterEnpoint = null; for (Endpoint endpoint : camelContext.getEndpoints()) { if (endpoint instanceof TwitterEndpointPolling) { twitterEnpoint = (TwitterEndpointPolling)endpoint; break; } } Assert.assertNotNull("No TwitterConsumerPolling found", twitterEnpoint); Assert.assertTrue(twitterEnpoint.getEndpointUri().startsWith("twitter-search-component:")); Assert.assertEquals("camelsearchtest", twitterEnpoint.getKeywords()); Assert.assertFalse(twitterEnpoint.isFilterOld()); } // *********************************** // Configuration // *********************************** @Configuration public static class TestConfiguration { @Bean public RouteBuilder routeBuilder() { return new RouteBuilder() { @Override public void configure() throws Exception { from("tw-search?keywords=camelsearchtest&filterOld=false") .noAutoStartup() .to("mock:result"); } }; } } }