Skip to content

Commit 2e98fd6

Browse files
author
Frederick Ross
committed
Fixed __contains__ in Inputs (since it needs a special case).
It and __getitem__ on Inputs still need to be rewritten to avoid using list(). I've filed a Jira on myself for that (SPL-53341).
1 parent ddb4a13 commit 2e98fd6

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

splunklib/client.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1461,6 +1461,13 @@ def __getitem__(self, key):
14611461
else:
14621462
raise KeyError(key)
14631463

1464+
def __contains__(self, key):
1465+
try:
1466+
self.__getitem__(key)
1467+
return True
1468+
except KeyError:
1469+
return False
1470+
14641471

14651472
def create(self, kind, name, **kwargs):
14661473
"""Creates an input of a specific kind in this collection, with any

tests/test_input.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,9 @@ def test_crud(self):
109109
for input in inputs:
110110
if input.name == '9999':
111111
inputs.delete(input.kind, input.name)
112-
self.assertFalse(inputs.contains('9999'))
112+
self.assertFalse('9999' in inputs)
113113
inputs.create("tcp", "9999", host="sdk-test")
114-
self.assertTrue(inputs.contains('9999'))
114+
self.assertTrue('9999' in inputs)
115115
input_ = inputs['9999']
116116
self.assertEqual(input_.kind, "tcp")
117117
self.assertEqual(input_['host'], "sdk-test")
@@ -128,7 +128,8 @@ def test_crud(self):
128128
for input in inputs:
129129
if input.name == '9999':
130130
inputs.delete(input.kind, input.name)
131-
self.assertFalse(inputs.contains('9999'))
131+
self.assertFalse('9999' in inputs)
132+
self.assertFalse(inputs.contains('9999'));
132133

133134

134135

0 commit comments

Comments
 (0)