Skip to content

Commit e62b227

Browse files
committed
Remove unused Test and TestRecorder classes from test_internals_v2.py
These are unused since 81ab83c
1 parent d85a59f commit e62b227

File tree

1 file changed

+1
-158
lines changed

1 file changed

+1
-158
lines changed

tests/unit/searchcommands/test_internals_v2.py

Lines changed: 1 addition & 158 deletions
Original file line numberDiff line numberDiff line change
@@ -15,34 +15,26 @@
1515
# License for the specific language governing permissions and limitations
1616
# under the License.
1717

18-
import gzip
19-
import io
2018
import json
2119
import os
2220
import random
2321
import sys
2422

2523
import pytest
26-
from functools import wraps
27-
from itertools import chain
2824
from sys import float_info
29-
from tempfile import mktemp
3025
from time import time
31-
from types import MethodType
3226
from unittest import main, TestCase
3327

3428
from collections import OrderedDict
35-
from collections import namedtuple, deque
29+
from collections import namedtuple
3630

3731
from splunklib.searchcommands.internals import (
3832
MetadataDecoder,
3933
MetadataEncoder,
40-
Recorder,
4134
RecordWriterV2,
4235
)
4336
from splunklib.searchcommands import SearchMetric
4437
from io import BytesIO
45-
import pickle
4638

4739

4840
# region Functions for producing random apps
@@ -299,154 +291,5 @@ def _load_chunks(self, ifile):
299291
_package_path = os.path.dirname(os.path.abspath(__file__))
300292

301293

302-
class TestRecorder:
303-
def __init__(self, test_case):
304-
self._test_case = test_case
305-
self._output = None
306-
self._recording = None
307-
self._recording_part = None
308-
309-
def _not_implemented(self):
310-
raise NotImplementedError(
311-
"class {} is not in playback or record mode".format(
312-
self.__class__.__name__
313-
)
314-
)
315-
316-
self.get = self.next_part = self.stop = MethodType(
317-
_not_implemented, self, self.__class__
318-
)
319-
320-
@property
321-
def output(self):
322-
return self._output
323-
324-
def playback(self, path):
325-
with open(path, "rb") as f:
326-
test_data = pickle.load(f)
327-
328-
self._output = BytesIO()
329-
self._recording = test_data["inputs"]
330-
self._recording_part = self._recording.popleft()
331-
332-
def get(self, method, *args, **kwargs):
333-
return self._recording_part[method.__name__].popleft()
334-
335-
self.get = MethodType(get, self, self.__class__)
336-
337-
def next_part(self):
338-
self._recording_part = self._recording.popleft()
339-
340-
self.next_part = MethodType(next_part, self, self.__class__)
341-
342-
def stop(self):
343-
self._test_case.assertEqual(test_data["results"], self._output.getvalue())
344-
345-
self.stop = MethodType(stop, self, self.__class__)
346-
347-
def record(self, path):
348-
self._output = BytesIO()
349-
self._recording = deque()
350-
self._recording_part = OrderedDict()
351-
self._recording.append(self._recording_part)
352-
353-
def get(self, method, *args, **kwargs):
354-
result = method(*args, **kwargs)
355-
part = self._recording_part
356-
key = method.__name__
357-
try:
358-
results = part[key]
359-
except KeyError:
360-
part[key] = results = deque()
361-
results.append(result)
362-
return result
363-
364-
self.get = MethodType(get, self, self.__class__)
365-
366-
def next_part(self):
367-
part = OrderedDict()
368-
self._recording_part = part
369-
self._recording.append(part)
370-
371-
self.next_part = MethodType(next_part, self, self.__class__)
372-
373-
def stop(self):
374-
with io.open(path, "wb") as f:
375-
test = OrderedDict(
376-
(("inputs", self._recording), ("results", self._output.getvalue()))
377-
)
378-
pickle.dump(test, f)
379-
380-
self.stop = MethodType(stop, self, self.__class__)
381-
382-
383-
def recorded(method):
384-
@wraps(method)
385-
def _record(*args, **kwargs):
386-
return args[0].recorder.get(method, *args, **kwargs)
387-
388-
return _record
389-
390-
391-
class Test:
392-
def __init__(self, fieldnames, data_generators):
393-
TestCase.__init__(self)
394-
self._data_generators = list(
395-
chain((lambda: self._serial_number, time), data_generators)
396-
)
397-
self._fieldnames = list(chain(("_serial", "_time"), fieldnames))
398-
self._recorder = TestRecorder(self)
399-
self._serial_number = None
400-
401-
@property
402-
@recorded
403-
def fieldnames(self):
404-
return self._fieldnames
405-
406-
@property
407-
@recorded
408-
def row(self):
409-
return [data_generator.__call__() for data_generator in self._data_generators]
410-
411-
@property
412-
def recorder(self):
413-
return self._recorder
414-
415-
@property
416-
def serial_number(self):
417-
return self._serial_number
418-
419-
def playback(self):
420-
self.recorder.playback(
421-
os.path.join(TestInternals._package_path, "TestRecorder.recording")
422-
)
423-
self._run()
424-
self.recorder.stop()
425-
426-
def record(self):
427-
self.recorder.record(
428-
os.path.join(TestInternals._package_path, "TestRecorder.recording")
429-
)
430-
self._run()
431-
self.recorder.stop()
432-
433-
def runTest(self):
434-
pass # We'll adopt the new test recording mechanism a little later
435-
436-
def _run(self):
437-
writer = RecordWriterV2(self.recorder.output, maxresultrows=10)
438-
write_record = writer.write_record
439-
names = self.fieldnames
440-
441-
for self._serial_number in range(0, 31):
442-
record = OrderedDict(list(zip(names, self.row)))
443-
write_record(record)
444-
445-
446-
# test = Test(['random_bytes', 'random_unicode'], [random_bytes, random_unicode])
447-
# test.record()
448-
# test.playback()
449-
450-
451294
if __name__ == "__main__":
452295
main()

0 commit comments

Comments
 (0)