blob: cb5782a81ce9be3918de41ad84f617282dd5bcaa [file] [log] [blame]
#!/usr/bin/python2 -i
"""Inspector for parser_result.store from specified scenerio package.
Load in parser_result.store as 'sto' and launch interactive interp.
Define some helper functions as required.
"""
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import optparse, os, sys
from os import path
import common
from autotest_lib.tko.parsers.test import scenario_base
usage = 'usage: %prog [options] scenario_dirpath'
parser = optparse.OptionParser(usage=usage)
parser.add_option("-w", action="store_true", dest="open_for_write")
(options, args) = parser.parse_args()
if len(args) < 1:
parser.print_help()
sys.exit(1)
scenario_dirpath = path.normpath(args[0])
if not path.exists(scenario_dirpath) or not path.isdir(scenario_dirpath):
print('Invalid scenarios_dirpath:', scenario_dirpath)
parser.print_help()
sys.exit(1)
sto = scenario_base.load_parser_result_store(
scenario_dirpath, options.open_for_write)
def compare(left_tag, right_tag):
missing = set([left_tag, right_tag]).difference(list(sto.keys()))
if missing:
print('Store does not have the following tag(s): ', ','.join(missing))
print('Doing nothing.')
return
for diffline in scenario_base.compare_parser_results(
sto[left_tag], sto[right_tag]):
print(diffline)