OLD | NEW |
1 #!/usr/bin/python | 1 #!/usr/bin/python |
2 # | 2 # |
3 # Copyright 2015 The Chromium Authors. All rights reserved. | 3 # Copyright 2015 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 """Loops Custom Tabs tests and outputs the results into a CSV file.""" | 7 """Loops Custom Tabs tests and outputs the results into a CSV file.""" |
8 | 8 |
9 import collections | 9 import collections |
10 import contextlib | 10 import contextlib |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 | 191 |
192 Args: | 192 Args: |
193 filename: (str) file to process. | 193 filename: (str) file to process. |
194 | 194 |
195 Returns: | 195 Returns: |
196 A numpy structured array. | 196 A numpy structured array. |
197 """ | 197 """ |
198 import numpy as np | 198 import numpy as np |
199 data = np.genfromtxt(filename, delimiter=',', skip_header=1) | 199 data = np.genfromtxt(filename, delimiter=',', skip_header=1) |
200 result = np.array(np.zeros(len(data)), | 200 result = np.array(np.zeros(len(data)), |
201 dtype=[('warmup', bool), ('speculation_mode', np.int32), | 201 dtype=[('warmup', bool), ('speculation_mode', str), |
202 ('delay_to_may_launch_url', np.int32), | 202 ('delay_to_may_launch_url', np.int32), |
203 ('delay_to_launch_url', np.int32), | 203 ('delay_to_launch_url', np.int32), |
204 ('commit', np.int32), ('plt', np.int32), | 204 ('commit', np.int32), ('plt', np.int32), |
205 ('first_contentful_paint', np.int32)]) | 205 ('first_contentful_paint', np.int32)]) |
206 result['warmup'] = data[:, 0] | 206 result['warmup'] = data[:, 0] |
207 result['speculation_mode'] = data[:, 1] | 207 result['speculation_mode'] = data[:, 1] |
208 result['delay_to_may_launch_url'] = data[:, 2] | 208 result['delay_to_may_launch_url'] = data[:, 2] |
209 result['delay_to_launch_url'] = data[:, 3] | 209 result['delay_to_launch_url'] = data[:, 3] |
210 result['commit'] = data[:, 4] | 210 result['commit'] = data[:, 4] |
211 result['plt'] = data[:, 5] | 211 result['plt'] = data[:, 5] |
212 result['first_contentful_paint'] = data[:, 6] | 212 result['first_contentful_paint'] = data[:, 6] |
213 return result | 213 return result |
214 | 214 |
215 | 215 |
216 def _CreateOptionParser(): | 216 def _CreateOptionParser(): |
217 parser = optparse.OptionParser(description='Loops Custom Tabs tests on a ' | 217 parser = optparse.OptionParser(description='Loops Custom Tabs tests on a ' |
218 'device, and outputs the navigation timings ' | 218 'device, and outputs the navigation timings ' |
219 'in a CSV file.') | 219 'in a CSV file.') |
220 parser.add_option('--device', help='Device ID') | 220 parser.add_option('--device', help='Device ID') |
221 parser.add_option('--url', help='URL to navigate to.', | 221 parser.add_option('--url', help='URL to navigate to.', |
222 default='https://www.android.com') | 222 default='https://www.android.com') |
223 parser.add_option('--warmup', help='Call warmup.', default=False, | 223 parser.add_option('--warmup', help='Call warmup.', default=False, |
224 action='store_true') | 224 action='store_true') |
225 parser.add_option('--speculation_mode', default='prerender', | 225 parser.add_option('--speculation_mode', default='prerender', |
226 help='The speculation mode (prerender, disabled, ' | 226 help='The speculation mode (prerender, ' |
227 'speculative_prefetch or no_state_prefetch).', | 227 'speculative_prefetch or no_state_prefetch).', |
228 choices=['prerender', 'disabled', 'speculative_prefetch', | 228 choices=['disabled', 'prerender', 'hidden_tab']) |
229 'no_state_prefetch']) | |
230 parser.add_option('--delay_to_may_launch_url', | 229 parser.add_option('--delay_to_may_launch_url', |
231 help='Delay before calling mayLaunchUrl() in ms.', | 230 help='Delay before calling mayLaunchUrl() in ms.', |
232 type='int', default=1000) | 231 type='int', default=1000) |
233 parser.add_option('--delay_to_launch_url', | 232 parser.add_option('--delay_to_launch_url', |
234 help='Delay before calling launchUrl() in ms.', | 233 help='Delay before calling launchUrl() in ms.', |
235 type='int', default=-1) | 234 type='int', default=-1) |
236 parser.add_option('--cold', help='Purge the page cache before each run.', | 235 parser.add_option('--cold', help='Purge the page cache before each run.', |
237 default=False, action='store_true') | 236 default=False, action='store_true') |
238 parser.add_option('--output_file', help='Output file (append). "-" for ' | 237 parser.add_option('--output_file', help='Output file (append). "-" for ' |
239 'stdout') | 238 'stdout') |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 'delay_to_launch_url': options.delay_to_launch_url, | 295 'delay_to_launch_url': options.delay_to_launch_url, |
297 'cold': options.cold, | 296 'cold': options.cold, |
298 } | 297 } |
299 LoopOnDevice(device, [config], options.output_file, options.wpr_archive, | 298 LoopOnDevice(device, [config], options.output_file, options.wpr_archive, |
300 options.record, options.network_condition, options.wpr_log, | 299 options.record, options.network_condition, options.wpr_log, |
301 once=options.once) | 300 once=options.once) |
302 | 301 |
303 | 302 |
304 if __name__ == '__main__': | 303 if __name__ == '__main__': |
305 main() | 304 main() |
OLD | NEW |