| /* |
| * 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.splunk; |
| |
| import com.splunk.SSLSecurityProtocol; |
| import com.splunk.Service; |
| |
| import org.apache.camel.test.junit4.CamelTestSupport; |
| import org.junit.Test; |
| |
| public class SplunkComponentConfigurationTest extends CamelTestSupport { |
| |
| @Test |
| public void createProducerEndpointWithMinimalConfiguration() throws Exception { |
| SplunkComponent component = context.getComponent("splunk", SplunkComponent.class); |
| |
| SplunkEndpoint endpoint = (SplunkEndpoint)component.createEndpoint("splunk://test?username=test&password=pw"); |
| assertEquals(Service.DEFAULT_HOST, endpoint.getConfiguration().getHost()); |
| assertEquals(Service.DEFAULT_PORT, endpoint.getConfiguration().getPort()); |
| assertEquals("test", endpoint.getConfiguration().getUsername()); |
| assertEquals("pw", endpoint.getConfiguration().getPassword()); |
| assertEquals(Service.DEFAULT_SCHEME, endpoint.getConfiguration().getScheme()); |
| assertEquals(5000, endpoint.getConfiguration().getConnectionTimeout()); |
| assertFalse(endpoint.getConfiguration().isUseSunHttpsHandler()); |
| assertFalse(endpoint.getConfiguration().isRaw()); |
| assertEquals(SSLSecurityProtocol.TLSv1_2, endpoint.getConfiguration().getSslProtocol()); |
| } |
| |
| @Test(expected = IllegalArgumentException.class) |
| public void createProducerWithoutUserAndPassword() throws Exception { |
| SplunkComponent component = context.getComponent("splunk", SplunkComponent.class); |
| component.createEndpoint("splunk://test"); |
| } |
| |
| @Test |
| public void createProducerEndpointWithMaximalConfiguration() throws Exception { |
| SplunkComponent component = context.getComponent("splunk", SplunkComponent.class); |
| |
| SplunkEndpoint endpoint = (SplunkEndpoint)component |
| .createEndpoint("splunk://tcp?username=test&password=pw&host=myhost&port=3333&" + "tcpReceiverPort=4444&index=myindex&sourceType=testSource&" |
| + "source=test&eventHost=original-host.com&owner=me&app=fantasticapp&useSunHttpsHandler=true&raw=true&sslProtocol=SSLv3"); |
| assertEquals("myhost", endpoint.getConfiguration().getHost()); |
| assertEquals(3333, endpoint.getConfiguration().getPort()); |
| assertEquals("test", endpoint.getConfiguration().getUsername()); |
| assertEquals("pw", endpoint.getConfiguration().getPassword()); |
| assertEquals(4444, endpoint.getConfiguration().getTcpReceiverPort()); |
| assertEquals("myindex", endpoint.getConfiguration().getIndex()); |
| assertEquals("testSource", endpoint.getConfiguration().getSourceType()); |
| assertEquals("test", endpoint.getConfiguration().getSource()); |
| assertEquals("original-host.com", endpoint.getConfiguration().getEventHost()); |
| assertEquals("me", endpoint.getConfiguration().getOwner()); |
| assertEquals("fantasticapp", endpoint.getConfiguration().getApp()); |
| assertTrue(endpoint.getConfiguration().isUseSunHttpsHandler()); |
| assertTrue(endpoint.getConfiguration().isRaw()); |
| assertEquals(SSLSecurityProtocol.SSLv3, endpoint.getConfiguration().getSslProtocol()); |
| } |
| |
| @Test |
| public void createConsumerEndpointWithMinimalConfiguration() throws Exception { |
| SplunkComponent component = context.getComponent("splunk", SplunkComponent.class); |
| |
| SplunkEndpoint endpoint = (SplunkEndpoint)component.createEndpoint("splunk://realtime?username=test&" + "password=pw&search=Splunk search query goes here"); |
| assertEquals(Service.DEFAULT_HOST, endpoint.getConfiguration().getHost()); |
| assertEquals(Service.DEFAULT_PORT, endpoint.getConfiguration().getPort()); |
| assertEquals("test", endpoint.getConfiguration().getUsername()); |
| assertEquals("pw", endpoint.getConfiguration().getPassword()); |
| assertEquals(Service.DEFAULT_SCHEME, endpoint.getConfiguration().getScheme()); |
| assertEquals(5000, endpoint.getConfiguration().getConnectionTimeout()); |
| assertEquals("Splunk search query goes here", endpoint.getConfiguration().getSearch()); |
| } |
| |
| @Test |
| public void createConsumerEndpointWithMaximalConfiguration() throws Exception { |
| SplunkComponent component = context.getComponent("splunk", SplunkComponent.class); |
| |
| SplunkEndpoint endpoint = (SplunkEndpoint)component |
| .createEndpoint("splunk://normal?username=test&password=pw&host=myhost&port=3333&delay=10s&" + "search=Splunk search query goes here&initEarliestTime=-1d" |
| + "&latestTime=now&count=10&" + "owner=me&app=fantasticapp"); |
| assertEquals("myhost", endpoint.getConfiguration().getHost()); |
| assertEquals(3333, endpoint.getConfiguration().getPort()); |
| assertEquals("test", endpoint.getConfiguration().getUsername()); |
| assertEquals("pw", endpoint.getConfiguration().getPassword()); |
| assertEquals("-1d", endpoint.getConfiguration().getInitEarliestTime()); |
| assertEquals("now", endpoint.getConfiguration().getLatestTime()); |
| assertEquals(10, endpoint.getConfiguration().getCount()); |
| assertEquals("me", endpoint.getConfiguration().getOwner()); |
| assertEquals("fantasticapp", endpoint.getConfiguration().getApp()); |
| assertEquals(Service.DEFAULT_SCHEME, endpoint.getConfiguration().getScheme()); |
| assertEquals("Splunk search query goes here", endpoint.getConfiguration().getSearch()); |
| } |
| |
| } |