• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2014 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4# pylint: disable=W0401,W0614
5from telemetry.page.actions.all_page_actions import *
6from telemetry.page import page as page_module
7from telemetry.page import page_set as page_set_module
8
9
10class ImageDecodingMeasurementPage(page_module.Page):
11
12  def __init__(self, url, page_set):
13    super(ImageDecodingMeasurementPage, self).__init__(url=url,
14                                                       page_set=page_set)
15    self.image_decoding_measurement_limit_results_to_min_iterations = True
16
17  def RunNavigateSteps(self, action_runner):
18    action_runner.NavigateToPage(self)
19    action_runner.ExecuteJavaScript('runBenchmark();')
20    action_runner.WaitForJavaScriptCondition('isDone')
21
22
23class ImageDecodingMeasurementPageSet(page_set_module.PageSet):
24
25  """ A directed benchmark of image decoding performance """
26
27  def __init__(self):
28    super(ImageDecodingMeasurementPageSet, self).__init__()
29    self.image_decoding_measurement_limit_results_to_min_iterations = True
30
31    urls_list = [
32      'file://../../../chrome/test/data/image_decoding/image_decoding.html?gif',
33      'file://../../../chrome/test/data/image_decoding/image_decoding.html?jpg',
34      'file://../../../chrome/test/data/image_decoding/image_decoding.html?png',
35      'file://../../../chrome/test/data/image_decoding/image_decoding.html?webp'
36    ]
37
38    for url in urls_list:
39      self.AddPage(ImageDecodingMeasurementPage(url, self))
40