Repository: camel Updated Branches: refs/heads/master fe7804bbb -> 8827c36a7
http://git-wip-us.apache.org/repos/asf/camel/blob/befc483e/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/java/org/apache/camel/component/hazelcast/springboot/customizer/HazelcastInstanceCustomizerTest.java ---------------------------------------------------------------------- diff --git a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/java/org/apache/camel/component/hazelcast/springboot/customizer/HazelcastInstanceCustomizerTest.java b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/java/org/apache/camel/component/hazelcast/springboot/customizer/HazelcastInstanceCustomizerTest.java new file mode 100644 index 0000000..8bc3e93 --- /dev/null +++ b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/java/org/apache/camel/component/hazelcast/springboot/customizer/HazelcastInstanceCustomizerTest.java @@ -0,0 +1,91 @@ +/** + * 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.hazelcast.springboot.customizer; + + +import java.util.List; + +import com.hazelcast.core.Hazelcast; +import com.hazelcast.core.HazelcastInstance; +import org.apache.camel.component.hazelcast.HazelcastComponent; +import org.apache.camel.component.hazelcast.list.HazelcastListComponent; +import org.apache.camel.component.hazelcast.set.HazelcastSetComponent; +import org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent; +import org.apache.camel.spi.ComponentCustomizer; +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 = { + HazelcastInstanceCustomizerTest.TestConfiguration.class + }, + properties = { + "debug=false", + "camel.component.customizer.enabled=false", + "camel.component.hazelcast.customizer.enabled=true", + "camel.component.hazelcast-set.customizer.enabled=true", + "camel.component.hazelcast-topic.customizer.enabled=true" + }) +public class HazelcastInstanceCustomizerTest { + @Autowired + HazelcastInstance instance; + @Autowired + HazelcastTopicComponent topicComponent; + @Autowired + List<ComponentCustomizer<HazelcastTopicComponent>> topicCustomizers; + @Autowired + HazelcastSetComponent setComponent; + @Autowired + List<ComponentCustomizer<HazelcastSetComponent>> setCustomizers; + @Autowired + HazelcastListComponent listComponent; + + @Test + public void testInstanceCustomizer() throws Exception { + Assert.assertNotNull(instance); + + Assert.assertNotNull(topicComponent); + Assert.assertEquals(1, topicCustomizers.size()); + Assert.assertEquals(instance, topicComponent.getHazelcastInstance()); + + Assert.assertNotNull(setComponent); + Assert.assertEquals(1, setCustomizers.size()); + Assert.assertEquals(instance, setComponent.getHazelcastInstance()); + + Assert.assertNotNull(listComponent); + Assert.assertNull(listComponent.getHazelcastInstance()); + } + + @Configuration + public static class TestConfiguration { + @Bean(destroyMethod = "shutdown") + public HazelcastInstance hazelcastInstance() { + return Hazelcast.newHazelcastInstance(); + } + } +} http://git-wip-us.apache.org/repos/asf/camel/blob/befc483e/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/application.properties ---------------------------------------------------------------------- diff --git a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/application.properties b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/application.properties new file mode 100644 index 0000000..3a5de5b --- /dev/null +++ b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/application.properties @@ -0,0 +1 @@ +spring.main.banner-mode = off http://git-wip-us.apache.org/repos/asf/camel/blob/befc483e/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/logback.xml ---------------------------------------------------------------------- diff --git a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/logback.xml b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/logback.xml new file mode 100644 index 0000000..41d68d9 --- /dev/null +++ b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/test/resources/logback.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + 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. + +--> +<configuration> + + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%-15.15thread] %-5level %-30.30logger - %msg%n</pattern> + </encoder> + </appender> + + <appender name="FILE" class="ch.qos.logback.core.FileAppender"> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%-15.15thread] %-5level %-30.30logger - %msg%n</pattern> + </encoder> + <file>target/camel-hazelcast-starter-test.log</file> + </appender> + + <logger name="org.apache.camel.component.hazelcast.atomicnumber.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.instance.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.list.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.map.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.multimap.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.queue.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.replicatedmap.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.ringbuffer.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.seda.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.set.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.springboot" level="DEBUG"/> + <logger name="org.apache.camel.component.hazelcast.topic.springboot" level="DEBUG"/> + + <root level="INFO"> + <appender-ref ref="FILE"/> + </root> + +</configuration> \ No newline at end of file