diff --git a/avocado/core/test.py b/avocado/core/test.py index 4ab33b4383e6375ca5ca18dd4c3f3993954ea68a..4d6816ad19ab898d67a2b056524c9239f9ee4c60 100644 --- a/avocado/core/test.py +++ b/avocado/core/test.py @@ -642,9 +642,12 @@ class Test(unittest.TestCase, TestData): state['class_name'] = self.__class__.__name__ state['job_logdir'] = self.job.logdir state['job_unique_id'] = self.job.unique_id - state['params'] = [(path, key, value) - for path, key, value - in self.params.iteritems()] + try: + state['params'] = [(path, key, value) + for path, key, value + in self.params.iteritems()] + except Exception: + state['params'] = None return state def _register_log_file_handler(self, logger, formatter, filename, diff --git a/optional_plugins/html/avocado_result_html/__init__.py b/optional_plugins/html/avocado_result_html/__init__.py index f7a9e8705c609814cb9291d5f302dab43d54bb18..6d32d7f8d07b99402984491b5d8689faecaf5117 100644 --- a/optional_plugins/html/avocado_result_html/__init__.py +++ b/optional_plugins/html/avocado_result_html/__init__.py @@ -126,15 +126,18 @@ class ReportModel(object): formatted = {} formatted['uid'] = tst['name'].uid formatted['name'] = tst['name'].name - params = '' - try: - parameters = 'Params:\n' - for path, key, value in tst['params']: - parameters += ' %s:%s => %s\n' % (path, key, value) - except KeyError: - pass + if tst['params']: + params = '' + try: + parameters = 'Params:\n' + for path, key, value in tst['params']: + parameters += ' %s:%s => %s\n' % (path, key, value) + except KeyError: + pass + else: + params = parameters else: - params = parameters + params = "No params" formatted['params'] = params formatted['variant'] = tst['name'].variant or '' formatted['status'] = tst['status'] diff --git a/optional_plugins/resultsdb/avocado_resultsdb/__init__.py b/optional_plugins/resultsdb/avocado_resultsdb/__init__.py index 34bc2caa2484cfa2325caf3cdb1fe43381553ee4..3cc736022b08e958d9ed83ad71c055310d4742c3 100644 --- a/optional_plugins/resultsdb/avocado_resultsdb/__init__.py +++ b/optional_plugins/resultsdb/avocado_resultsdb/__init__.py @@ -114,9 +114,10 @@ class ResultsdbResultEvent(ResultEvents): 'status': state['status']} params = {} - for path, key, value in state['params']: - params['param %s' % key] = '%s (path: %s)' % (value, path) - data.update(params) + if state['params']: + for path, key, value in state['params']: + params['param %s' % key] = '%s (path: %s)' % (value, path) + data.update(params) self.rdbapi.create_result(outcome, name, group, note, ref_url, **data)