OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import os | 5 import os |
6 | 6 |
7 from metrics import power | 7 from metrics import power |
8 from telemetry import test | 8 from telemetry import benchmark |
9 from telemetry.core import util | 9 from telemetry.core import util |
10 from telemetry.page import page_measurement | 10 from telemetry.page import page_measurement |
11 from telemetry.page import page_set | 11 from telemetry.page import page_set |
12 | 12 |
13 | 13 |
14 class _DromaeoMeasurement(page_measurement.PageMeasurement): | 14 class _DromaeoMeasurement(page_measurement.PageMeasurement): |
15 def __init__(self): | 15 def __init__(self): |
16 super(_DromaeoMeasurement, self).__init__() | 16 super(_DromaeoMeasurement, self).__init__() |
17 self._power_metric = power.PowerMetric() | 17 self._power_metric = power.PowerMetric() |
18 | 18 |
(...skipping 21 matching lines...) Expand all Loading... |
40 return k | 40 return k |
41 | 41 |
42 suffix = page.url[page.url.index('?') + 1 : page.url.index('&')] | 42 suffix = page.url[page.url.index('?') + 1 : page.url.index('&')] |
43 for k, v in score.iteritems(): | 43 for k, v in score.iteritems(): |
44 data_type = 'unimportant' | 44 data_type = 'unimportant' |
45 if k == suffix: | 45 if k == suffix: |
46 data_type = 'default' | 46 data_type = 'default' |
47 results.Add(Escape(k), 'runs/s', float(v), data_type=data_type) | 47 results.Add(Escape(k), 'runs/s', float(v), data_type=data_type) |
48 | 48 |
49 | 49 |
50 class _DromaeoBenchmark(test.Test): | 50 class _DromaeoBenchmark(benchmark.Benchmark): |
51 """A base class for Dromaeo benchmarks.""" | 51 """A base class for Dromaeo benchmarks.""" |
52 test = _DromaeoMeasurement | 52 test = _DromaeoMeasurement |
53 | 53 |
54 def CreatePageSet(self, options): | 54 def CreatePageSet(self, options): |
55 """Makes a PageSet for Dromaeo benchmarks.""" | 55 """Makes a PageSet for Dromaeo benchmarks.""" |
56 # Subclasses are expected to define a class member called query_param. | 56 # Subclasses are expected to define a class member called query_param. |
57 if not hasattr(self, 'query_param'): | 57 if not hasattr(self, 'query_param'): |
58 raise NotImplementedError('query_param not in Dromaeo benchmark.') | 58 raise NotImplementedError('query_param not in Dromaeo benchmark.') |
59 url = 'file://index.html?%s&automated' % self.query_param | 59 url = 'file://index.html?%s&automated' % self.query_param |
60 dromaeo_dir = os.path.join(util.GetChromiumSrcDir(), | 60 dromaeo_dir = os.path.join(util.GetChromiumSrcDir(), |
61 'chrome', 'test', 'data', 'dromaeo') | 61 'chrome', 'test', 'data', 'dromaeo') |
62 ps = page_set.PageSet(file_path=dromaeo_dir) | 62 ps = page_set.PageSet(file_path=dromaeo_dir) |
63 ps.AddPageWithDefaultRunNavigate(url) | 63 ps.AddPageWithDefaultRunNavigate(url) |
64 return ps | 64 return ps |
65 | 65 |
66 | 66 |
67 class DromaeoDomCoreAttr(_DromaeoBenchmark): | 67 class DromaeoDomCoreAttr(_DromaeoBenchmark): |
68 """Dromaeo DOMCore attr JavaScript benchmark.""" | 68 """Dromaeo DOMCore attr JavaScript benchmark.""" |
69 tag = 'domcoreattr' | 69 tag = 'domcoreattr' |
70 query_param = 'dom-attr' | 70 query_param = 'dom-attr' |
71 | 71 |
72 | 72 |
73 @test.Disabled('xp') # crbug.com/323782 | 73 @benchmark.Disabled('xp') # crbug.com/323782 |
74 class DromaeoDomCoreModify(_DromaeoBenchmark): | 74 class DromaeoDomCoreModify(_DromaeoBenchmark): |
75 """Dromaeo DOMCore modify JavaScript benchmark.""" | 75 """Dromaeo DOMCore modify JavaScript benchmark.""" |
76 tag = 'domcoremodify' | 76 tag = 'domcoremodify' |
77 query_param = 'dom-modify' | 77 query_param = 'dom-modify' |
78 | 78 |
79 | 79 |
80 class DromaeoDomCoreQuery(_DromaeoBenchmark): | 80 class DromaeoDomCoreQuery(_DromaeoBenchmark): |
81 """Dromaeo DOMCore query JavaScript benchmark.""" | 81 """Dromaeo DOMCore query JavaScript benchmark.""" |
82 tag = 'domcorequery' | 82 tag = 'domcorequery' |
83 query_param = 'dom-query' | 83 query_param = 'dom-query' |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 """Dromaeo JSLib traverse jquery JavaScript benchmark""" | 141 """Dromaeo JSLib traverse jquery JavaScript benchmark""" |
142 tag = 'jslibtraversejquery' | 142 tag = 'jslibtraversejquery' |
143 query_param = 'jslib-traverse-jquery' | 143 query_param = 'jslib-traverse-jquery' |
144 | 144 |
145 | 145 |
146 class DromaeoJslibTraversePrototype(_DromaeoBenchmark): | 146 class DromaeoJslibTraversePrototype(_DromaeoBenchmark): |
147 """Dromaeo JSLib traverse prototype JavaScript benchmark""" | 147 """Dromaeo JSLib traverse prototype JavaScript benchmark""" |
148 tag = 'jslibtraverseprototype' | 148 tag = 'jslibtraverseprototype' |
149 query_param = 'jslib-traverse-prototype' | 149 query_param = 'jslib-traverse-prototype' |
150 | 150 |
OLD | NEW |