Revert "scenario.py: Move get_events and find_new_events to Realm"

Breaks things

This reverts commit 37026e108066be837936dde4bf73fd464d0746f7.
This commit is contained in:
Matthew Stidham
2022-01-04 09:33:57 -08:00
committed by shivam
parent 0a3ce42238
commit bfc51a6c7b

View File

@@ -18,6 +18,28 @@ realm = importlib.import_module("py-json.realm")
Realm = realm.Realm Realm = realm.Realm
def get_events(event_log, value):
results = []
for event in event_log:
if event.values():
results.append(list(event.values())[0][value])
return results
def find_new_events(original, new):
new_times = list()
new_events = list()
original_times = get_events(original['events'], 'time-stamp')
current_times = get_events(new['events'], 'time-stamp')
for x in current_times:
if x not in original_times:
new_times.append(x)
for x in new['events']:
if list(x.values())[0]['time-stamp'] in new_times:
new_events.append(x)
return new_events
class LoadScenario(Realm): class LoadScenario(Realm):
def __init__(self, def __init__(self,
mgr='localhost', mgr='localhost',
@@ -44,10 +66,10 @@ class LoadScenario(Realm):
self.quiesce = quiesce self.quiesce = quiesce
self.timeout = timeout self.timeout = timeout
self.BuildVersion = self.json_get('/')['VersionInfo']['BuildVersion'] self.BuildVersion = self.json_get('/')['VersionInfo']['BuildVersion']
self.starting_events = 1 self.starting_events = None
def start_test(self): def start_test(self):
self.starting_events = self.json_get('/events/last/1')['event']['id'] self.starting_events = self.json_get('/events/since=time/1h')
def load_scenario(self): def load_scenario(self):
if self.scenario is not None: if self.scenario is not None:
@@ -77,10 +99,11 @@ class LoadScenario(Realm):
completed = False completed = False
timer = 0 timer = 0
while not completed: while not completed:
new_events = self.find_new_events(self.starting_events) current_events = self.json_get('/events/since=time/1h')
target_events = [event for event in self.get_events(new_events, 'event description') if new_events = find_new_events(self.starting_events, current_events)
target_events = [event for event in get_events(new_events, 'event description') if
event.startswith('LOAD COMPLETED')] event.startswith('LOAD COMPLETED')]
if 'LOAD-DB: Load attempt has been completed.' in self.get_events(new_events, 'event description'): if 'LOAD-DB: Load attempt has been completed.' in get_events(new_events, 'event description'):
completed = True completed = True
print('Scenario %s fully loaded after %s seconds' % (self.scenario, timer)) print('Scenario %s fully loaded after %s seconds' % (self.scenario, timer))
elif len(target_events) > 0: elif len(target_events) > 0:
@@ -93,6 +116,7 @@ class LoadScenario(Realm):
completed = True completed = True
print('Scenario failed to load after %s seconds' % self.timeout) print('Scenario failed to load after %s seconds' % self.timeout)
else: else:
print(new_events)
print('Waiting %s out of %s seconds to load scenario %s' % (timer, self.timeout, self.scenario)) print('Waiting %s out of %s seconds to load scenario %s' % (timer, self.timeout, self.scenario))