diff --git a/testing/mozharness/mozharness/mozilla/testing/verify_tools.py b/testing/mozharness/mozharness/mozilla/testing/verify_tools.py index 6e4dc94b650f..f29870602006 100644 --- a/testing/mozharness/mozharness/mozilla/testing/verify_tools.py +++ b/testing/mozharness/mozharness/mozilla/testing/verify_tools.py @@ -68,6 +68,7 @@ class VerifyToolsMixin(object): man = TestManifest([path], strict=False) active = man.active_tests(exists=False, disabled=False, filters=[], **mozinfo.info) tests_by_path.update({t['relpath']:(suite,t.get('subsuite')) for t in active}) + self.info("Verification updated with manifest %s" % path) # determine which files were changed on this push url = '%s/json-automationrelevance/%s' % (repository.rstrip('/'), revision) @@ -83,6 +84,7 @@ class VerifyToolsMixin(object): for file in changed_files: entry = tests_by_path.get(file) if entry: + self.info("Verification found test %s" % file) subsuite_mapping = { ('browser-chrome', 'clipboard') : 'browser-chrome-clipboard', ('chrome', 'clipboard') : 'chrome-clipboard', @@ -128,6 +130,7 @@ class VerifyToolsMixin(object): files = self.verify_suites.get(suite) for file in files: args.append(['--verify-max-time=%d' % MAX_TIME_PER_TEST, '--verify', file]) + self.info("Verification file for '%s': %s" % (suite, files)) return args def query_verify_category_suites(self, category, all_suites): @@ -148,3 +151,26 @@ class VerifyToolsMixin(object): if category in ['mochitest', 'xpcshell']: suites = all_suites return suites + + def log_verify_status(self, test_name, tbpl_status, log_level): + """ + Log verification status of a single test. This will display in the + Job Details pane in treeherder - a convenient summary of verification. + Special test name formatting is needed because treeherder truncates + lines that are too long, and may remove duplicates after truncation. + """ + max_test_name_len = 40 + if len(test_name) > max_test_name_len: + head = test_name + new = "" + previous = None + max_test_name_len = max_test_name_len - len('.../') + while len(new) < max_test_name_len: + head, tail = os.path.split(head) + previous = new + new = os.path.join(tail, new) + test_name = os.path.join('...', previous or new) + test_name = test_name.rstrip(os.path.sep) + self.log("TinderboxPrint: Verification of %s
: %s" % + (test_name, tbpl_status), level=log_level) + diff --git a/testing/mozharness/scripts/desktop_unittest.py b/testing/mozharness/scripts/desktop_unittest.py index f2fc0760aba5..bf303ce6841e 100755 --- a/testing/mozharness/scripts/desktop_unittest.py +++ b/testing/mozharness/scripts/desktop_unittest.py @@ -792,8 +792,7 @@ class DesktopUnittest(TestingMixin, MercurialScript, BlobUploadMixin, MozbaseMix self.buildbot_status(tbpl_status, level=log_level) if len(verify_args) > 0: - self.log("TinderboxPrint: verification of %s in %s
: %s" % - (verify_args[-1], suite, tbpl_status), level=log_level) + self.log_verify_status(verify_args[-1], tbpl_status, log_level) else: self.log("The %s suite: %s ran with return status: %s" % (suite_category, suite, tbpl_status), level=log_level)