On 30 July 2018 at 06:27, Chris Johns <chr...@rtems.org> wrote: > On 26/07/2018 01:40, Vijay Kumar Banerjee wrote: > > Invoke covoar multiple times from the script to generate separate > > reports for each symbol-set. > > --- > > tester/rt/coverage.py | 42 ++++++++++++++++++++---------------------- > > 1 file changed, 20 insertions(+), 22 deletions(-) > > > > diff --git a/tester/rt/coverage.py b/tester/rt/coverage.py > > index 7dd5002..fe92d0a 100644 > > --- a/tester/rt/coverage.py > > +++ b/tester/rt/coverage.py > > @@ -100,7 +100,7 @@ class summary: > > > > class report_gen_html: > > def __init__(self, p_symbol_sets_list, build_dir, rtdir, bsp): > > I am not a fan of adding type info to variable names, for example > 'p_symbol_sets_list' where a design change may make this a dict. Please use > something else. > Understood. Thanks.
> > > - self.symbol_sets_list = ['score'] > > + self.symbol_sets_list = p_symbol_sets_list > > > > self.build_dir = build_dir > > self.partial_reports_files = list(['index.html', 'summary.txt']) > > self.number_of_columns = 1 > > @@ -250,41 +250,37 @@ class symbol_parser(object): > > self.build_dir = build_dir > > self.symbol_sets = {} > > self.symbol_set = symbol_set > > - self.ssets = [] > > + self.symbol_set_list = [] > > Same here and so on in the patch. Also I do not think this last change is > needed. > Understood. I'll remove this last change. > > Chris > > > > > def parse(self): > > config = configparser.ConfigParser() > > try: > > config.read(self.symbol_file) > > if self.symbol_set is not None: > > - self.ssets = self.symbol_set.split(',') > > + self.symbol_set_list = self.symbol_set.split(',') > > else: > > - self.ssets = config.get('symbol-sets', > 'sets').split(',') > > - self.ssets = [sset.encode('utf-8') for sset in > self.ssets] > > - for sset in self.ssets: > > + self.symbol_set_list = config.get('symbol-sets', > 'sets').split(',') > > + self.symbol_set_list = [sset.encode('utf-8') for sset > in self.symbol_set_list] > > + for sset in self.symbol_set_list: > > lib = path.join(self.build_dir, config.get('libraries', > sset)) > > self.symbol_sets[sset] = lib.encode('utf-8') > > + return self.symbol_set_list > > except: > > raise error.general('Symbol set parsing failed') > > > > - def _write_ini(self): > > + def write_ini(self, symbol_set): > > config = configparser.ConfigParser() > > try: > > - sets = ', '.join(self.symbol_sets.keys()) > > + sset = symbol_set > > config.add_section('symbol-sets') > > - config.set('symbol-sets', 'sets', sets) > > - for key in self.symbol_sets.keys(): > > - config.add_section(key) > > - config.set(key, 'libraries', self.symbol_sets[key]) > > + config.set('symbol-sets', 'sets', sset) > > + config.add_section(sset) > > + config.set(sset, 'libraries', self.symbol_sets[sset]) > > with open(self.symbol_select_file, 'w') as conf: > > config.write(conf) > > except: > > raise error.general('symbol parser write failed') > > > > - def run(self): > > - self.parse() > > - self._write_ini() > > - > > class covoar(object): > > ''' > > Covoar runner > > @@ -371,20 +367,22 @@ class coverage_run(object): > > self.symbol_select_path, > > self.symbol_set, > > build_dir) > > - parser.run() > > - covoar_runner = covoar(self.test_dir, > self.symbol_select_path, > > + symbol_set_list = parser.parse() > > + for sset in symbol_set_list: > > + parser.write_ini(sset) > > + covoar_runner = covoar(self.test_dir, > self.symbol_select_path, > > self.executables, > self.explanations_txt, > > self.trace) > > - covoar_runner.run('score', self.symbol_select_path) > > - self._generate_reports(); > > + covoar_runner.run(sset, self.symbol_select_path) > > + self._generate_reports(symbol_set_list); > > self._summarize(); > > finally: > > self._cleanup(); > > > > - def _generate_reports(self): > > + def _generate_reports(self, symbol_sets): > > log.notice('Coverage generating reports') > > if self.report_format == 'html': > > - report = report_gen_html(self.symbol_sets, > > + report = report_gen_html(symbol_sets, > > self.build_dir, > > self.rtdir, > > self.macros['bsp']) > > >
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel