Skip to content
This repository has been archived by the owner on Mar 29, 2019. It is now read-only.

Commit

Permalink
Bug 1193385 - Test summarization for subtests gives incorrect results…
Browse files Browse the repository at this point in the history
… for tresize (and possibly other tests). r=parkouss
  • Loading branch information
jmaher committed Aug 17, 2015
1 parent eccbbe6 commit 8309a4e
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 8 deletions.
2 changes: 1 addition & 1 deletion talos/filter.py
Expand Up @@ -185,5 +185,5 @@ def v8_subtest(series, name):
'Splay': 81491.
}

return reference[name] / filter.geometric_mean(series)
return reference[name] / geometric_mean(series)

32 changes: 25 additions & 7 deletions talos/output.py
Expand Up @@ -12,6 +12,9 @@
import time
import utils

# NOTE: we have a circular dependecy with output.py when we import results
import results as TalosResults

from StringIO import StringIO


Expand Down Expand Up @@ -489,10 +492,32 @@ def __call__(self):

# serialize test results
results = {}
tsresult = None
summary = {"suite": 0, "subtests": {}}
if not test.using_xperf:
vals = []

# TODO: counters!!!! we don't have any, but they suffer the same
for result in test.results:
# XXX this will not work for manifests which list
# the same page name twice. It also ignores cycles
for page, val in result.raw_values():
if page == 'NULL':
results.setdefault(test.name(), []).extend(val)
if tsresult is None:
tsresult = r = TalosResults.Results()
r.results = [{'index': 0, 'page': test.name(),
'runs': val}]
else:
r = tsresult.results[0]
if r['page'] == test.name():
r['runs'].extend(val)
else:
results.setdefault(page, []).extend(val)

tresults = [tsresult] if tsresult else test.results

for result in tresults:
filtered_results = \
result.values(test_result['testrun']['suite'],
test.test_config['filters'])
Expand All @@ -503,13 +528,6 @@ def __call__(self):
else:
summary['subtests'][page] = val

# XXX this will not work for manifests which list
# the same page name twice. It also ignores cycles
for page, val in result.raw_values():
if page == 'NULL':
results.setdefault(test.name(), []).extend(val)
else:
results.setdefault(page, []).extend(val)

suite_summary = self.construct_results(vals,
testname=test.name())
Expand Down
1 change: 1 addition & 0 deletions talos/test.py
Expand Up @@ -486,6 +486,7 @@ class v8_7(PageloaderTest):
resolution = 20
tpmozafterpaint = False
preferences = {'dom.send_after_paint_to_content': False}
filters = filter.v8_subtest.prepare()


@register_test()
Expand Down

0 comments on commit 8309a4e

Please sign in to comment.