Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1138)

Side by Side Diff: tools/telemetry/telemetry/record_wpr.py

Issue 1263063003: Revert of Create classes_util API, change discover to return a list instead of a dict. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2012 The Chromium Authors. All rights reserved. 1 # Copyright 2012 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 argparse 5 import argparse
6 import logging 6 import logging
7 import sys 7 import sys
8 8
9 from telemetry import benchmark 9 from telemetry import benchmark
10 from telemetry import story 10 from telemetry import story
11 from telemetry.core import discover
11 from telemetry.core import util 12 from telemetry.core import util
12 from telemetry.internal.browser import browser_options 13 from telemetry.internal.browser import browser_options
13 from telemetry.internal.results import results_options 14 from telemetry.internal.results import results_options
14 from telemetry.internal import story_runner 15 from telemetry.internal import story_runner
15 from telemetry.internal.util import command_line 16 from telemetry.internal.util import command_line
16 from telemetry.page import page_test 17 from telemetry.page import page_test
17 from telemetry.util import classes_util
18 from telemetry.util import wpr_modes 18 from telemetry.util import wpr_modes
19 19
20 20
21 class RecorderPageTest(page_test.PageTest): 21 class RecorderPageTest(page_test.PageTest):
22 def __init__(self): 22 def __init__(self):
23 super(RecorderPageTest, self).__init__() 23 super(RecorderPageTest, self).__init__()
24 self.page_test = None 24 self.page_test = None
25 25
26 def CustomizeBrowserOptions(self, options): 26 def CustomizeBrowserOptions(self, options):
27 if self.page_test: 27 if self.page_test:
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 64
65 def _GetSubclasses(base_dir, cls): 65 def _GetSubclasses(base_dir, cls):
66 """Returns all subclasses of |cls| in |base_dir|. 66 """Returns all subclasses of |cls| in |base_dir|.
67 67
68 Args: 68 Args:
69 cls: a class 69 cls: a class
70 70
71 Returns: 71 Returns:
72 dict of {underscored_class_name: benchmark class} 72 dict of {underscored_class_name: benchmark class}
73 """ 73 """
74 return classes_util.DiscoverClassesByClassName(base_dir, base_dir, cls) 74 return discover.DiscoverClasses(base_dir, base_dir, cls,
75 index_by_class_name=True)
75 76
76 77
77 def _MaybeGetInstanceOfClass(target, base_dir, cls): 78 def _MaybeGetInstanceOfClass(target, base_dir, cls):
78 if isinstance(target, cls): 79 if isinstance(target, cls):
79 return target 80 return target
80 return classes_util.MaybeGetInstanceOfClass(target, base_dir, base_dir, cls) 81 classes = _GetSubclasses(base_dir, cls)
82 return classes[target]() if target in classes else None
81 83
82 84
83 def _PrintAllImpl(all_items, item_name, output_stream): 85 def _PrintAllImpl(all_items, item_name, output_stream):
84 output_stream.write('Available %s\' names with descriptions:\n' % item_name) 86 output_stream.write('Available %s\' names with descriptions:\n' % item_name)
85 keys = sorted(all_items.keys()) 87 keys = sorted(all_items.keys())
86 key_description = [(k, all_items[k].Description()) for k in keys] 88 key_description = [(k, all_items[k].Description()) for k in keys]
87 _PrintPairs(key_description, output_stream) 89 _PrintPairs(key_description, output_stream)
88 output_stream.write('\n') 90 output_stream.write('\n')
89 91
90 92
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 return 0 264 return 0
263 265
264 # TODO(nednguyen): update WprRecorder so that it handles the difference 266 # TODO(nednguyen): update WprRecorder so that it handles the difference
265 # between recording a benchmark vs recording a story better based on 267 # between recording a benchmark vs recording a story better based on
266 # the distinction between args.benchmark & args.story 268 # the distinction between args.benchmark & args.story
267 wpr_recorder = WprRecorder(base_dir, target, extra_args) 269 wpr_recorder = WprRecorder(base_dir, target, extra_args)
268 results = wpr_recorder.CreateResults() 270 results = wpr_recorder.CreateResults()
269 wpr_recorder.Record(results) 271 wpr_recorder.Record(results)
270 wpr_recorder.HandleResults(results, args.upload) 272 wpr_recorder.HandleResults(results, args.upload)
271 return min(255, len(results.failures)) 273 return min(255, len(results.failures))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698