/* * Copyright 2012 Splunk, Inc. * * Licensed 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 com.splunk; import org.junit.Assert; import org.junit.Test; public class ScriptedInputTest extends SDKTestCase { @Test public void testMatchNonscriptInputName() { Assert.assertFalse(InputCollection.matchesInputName(InputKind.Tcp, "1-[]bc", "def")); Assert.assertTrue(InputCollection.matchesInputName(InputKind.Tcp, "1-[]bc", "1-[]bc")); } @Test public void testMatchScriptInputName() { Assert.assertTrue(InputCollection.matchesInputName( InputKind.Script, "abc.py", "$SPLUNK_HOME/etc/apps/boris/bin/abc.py" )); Assert.assertFalse(InputCollection.matchesInputName( InputKind.Script, "abc", "$SPLUNK_HOME/etc/apps/boris/bin/abc.py" )); Assert.assertTrue(InputCollection.matchesInputName( InputKind.Script, "abc.py", "$SPLUNK_HOME\\etc\\apps\\boris\\bin\\abc.py" )); Assert.assertFalse(InputCollection.matchesInputName( InputKind.Script, "abc", "$SPLUNK_HOME\\etc\\apps\\boris\\bin\\abc.py" )); } @Test public void testEntity() { // In Splunk 4.2, we can't use $SPLUNK_HOME in the path to the // script, so we have to fetch $SPLUNK_HOME separately and interpolate // it ourselves. String splunkHome = service.getSettings().getSplunkHome(); InputCollection inputs = service.getInputs(); inputs.create( joinServerPath(new String[] { splunkHome, "etc", "apps", "search", "bin", "bucketdir.py", }), InputKind.Script, Args.create("interval", "0")); inputs.refresh(); ScriptInput input = (ScriptInput)inputs.get("bucketdir.py"); Assert.assertNotNull(input); input.getEndTime(); input.getGroup(); input.getRcvBuf(); input.getSource(); input.getStartTime(); Assert.assertFalse(input.getBoolean("disabled")); input.setDisabled(true); input.update(); Assert.assertTrue(input.getBoolean("disabled")); input.setDisabled(false); input.update(); Assert.assertFalse(input.getBoolean("disabled")); input.remove(); } }