gpu_process_tests.py revision 0529e5d033099cbfc42635f6f6183833b09dff6e
10529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch# Copyright 2014 The Chromium Authors. All rights reserved. 20529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch# Use of this source code is governed by a BSD-style license that can be 30529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch# found in the LICENSE file. 40529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch# pylint: disable=W0401,W0614 50529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochfrom telemetry.page.actions.all_page_actions import * 60529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochfrom telemetry.page import page as page_module 70529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochfrom telemetry.page import page_set as page_set_module 80529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 90529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 100529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochclass GpuProcessTestsPage(page_module.PageWithDefaultRunNavigate): 110529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 120529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch def __init__(self, url, name, page_set): 130529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch super(GpuProcessTestsPage, self).__init__(url=url, page_set=page_set) 140529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch self.user_agent_type = 'desktop' 150529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch self.name = name 160529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 170529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch def RunNavigateSteps(self, action_runner): 180529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch action_runner.RunAction(NavigateAction()) 190529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 200529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochclass FunctionalVideoPage(GpuProcessTestsPage): 210529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 220529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch def __init__(self, page_set): 230529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch super(FunctionalVideoPage, self).__init__( 240529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch url='file://../../data/gpu/functional_video.html', 250529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch name='GpuProcess.video', 260529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch page_set=page_set) 270529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 280529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch def RunNavigateSteps(self, action_runner): 290529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch action_runner.RunAction(NavigateAction()) 300529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch action_runner.RunAction(WaitAction( 310529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch { 320529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 'javascript': 'domAutomationController._finished', 330529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 'timeout': 30 340529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch })) 350529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 360529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 370529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochclass GpuProcessTestsPageSet(page_set_module.PageSet): 380529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 390529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch """ Tests that accelerated content triggers the creation of a GPU process """ 400529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 410529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch def __init__(self): 420529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch super(GpuProcessTestsPageSet, self).__init__( 430529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch serving_dirs=set(['../../../../content/test/data']), 440529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch user_agent_type='desktop') 450529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 460529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch urls_and_names_list = [ 470529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch ('file://../../data/gpu/functional_canvas_demo.html', 480529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 'GpuProcess.canvas2d'), 490529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch ('file://../../data/gpu/functional_3d_css.html', 500529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 'GpuProcess.css3d'), 510529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch ('file://../../data/gpu/functional_webgl.html', 520529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 'GpuProcess.webgl') 530529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch ] 540529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 550529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch for url, name in urls_and_names_list: 560529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch self.AddPage(GpuProcessTestsPage(url, name, self)) 570529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 580529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch self.AddPage(FunctionalVideoPage(self)) 59