1 # Copyright (c) 2012 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.
5 """Runs Facebook's JSGameBench benchmark."""
9 from telemetry import test
10 from telemetry.page import page_measurement
11 from telemetry.page import page_set
14 class _JsgamebenchMeasurement(page_measurement.PageMeasurement):
16 super(_JsgamebenchMeasurement, self).__init__()
18 def MeasurePage(self, page, tab, results):
19 tab.ExecuteJavaScript('UI.call({}, "perftest")')
20 tab.WaitForJavaScriptExpression(
21 'document.getElementById("perfscore0") != null', 1800)
23 js_get_results = 'document.getElementById("perfscore0").innerHTML'
24 result = int(tab.EvaluateJavaScript(js_get_results))
25 results.Add('Score', 'score (bigger is better)', result)
28 @test.Disabled('linux') # crbug.com/365237
29 class Jsgamebench(test.Test):
30 """Counts how many animating sprites can move around on the screen at once."""
31 test = _JsgamebenchMeasurement
33 def CreatePageSet(self, options):
34 ps = page_set.PageSet(
35 archive_data_file='../page_sets/data/jsgamebench.json',
36 file_path=os.path.dirname(__file__))
37 ps.AddPageWithDefaultRunNavigate('http://localhost/')