Fix OOP <webview> resize and autosize.
[chromium-blink-merge.git] / tools / perf / page_sets / page_reload_cases.py
blobc2d3239a299b21873f8e70cf605d2f8912f8b818
1 # Copyright 2015 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 from telemetry.page import shared_page_state
5 from telemetry import story
7 from page_sets import top_pages
10 def _Reload(action_runner):
11 # Numbers below are chosen arbitrarily. For the V8DetachedContextAgeInGC
12 # the number of reloads should be high enough so that V8 could do few
13 # incremeantal GCs.
14 NUMBER_OF_RELOADS = 7
15 WAIT_TIME = 2
16 for _ in xrange(NUMBER_OF_RELOADS):
17 action_runner.ReloadPage()
18 action_runner.Wait(WAIT_TIME)
21 def _CreatePageClassWithReload(page_cls):
22 class DerivedSmoothPage(page_cls): # pylint: disable=W0232
24 def RunPageInteractions(self, action_runner):
25 _Reload(action_runner)
26 return DerivedSmoothPage
29 class PageReloadCasesPageSet(story.StorySet):
31 """ Pages for testing GC efficiency on page reload. """
33 def __init__(self):
34 super(PageReloadCasesPageSet, self).__init__(
35 archive_data_file='data/top_25.json',
36 cloud_storage_bucket=story.PARTNER_BUCKET)
38 shared_desktop_state = shared_page_state.SharedDesktopPageState
40 self.AddStory(_CreatePageClassWithReload(
41 top_pages.GoogleWebSearchPage)(self, shared_desktop_state))
42 self.AddStory(_CreatePageClassWithReload(
43 top_pages.GoogleDocPage)(self, shared_desktop_state))