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 Murdochfrom telemetry.page import page as page_module
50529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochfrom telemetry.page import page_set as page_set_module
60529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
70529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
8010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)class MemoryTestsPage(page_module.Page):
90529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
100529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch  def __init__(self, page_set):
110529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    super(MemoryTestsPage, self).__init__(
12010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      url='file://../../data/gpu/mem_css3d.html', page_set=page_set,
13010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      name='Memory.CSS3D')
140529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    self.user_agent_type = 'desktop'
150529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
160529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch  def RunNavigateSteps(self, action_runner):
17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    action_runner.NavigateToPage(self)
18f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)    action_runner.WaitForJavaScriptCondition(
19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        'domAutomationController._finished', timeout_in_seconds=60)
200529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
210529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
220529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochclass MemoryTestsPageSet(page_set_module.PageSet):
230529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
240529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch  """ Tests that validate GPU memory management """
250529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
260529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch  def __init__(self):
270529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    super(MemoryTestsPageSet, self).__init__(
280529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      user_agent_type='desktop')
290529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
300529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    self.AddPage(MemoryTestsPage(self))
31