1 # Copyright (c) 2013 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.
7 from telemetry.core import util
8 from telemetry.page import page_set
9 from telemetry.page import profile_creator
12 class SmallProfileCreator(profile_creator.ProfileCreator):
14 Runs a browser through a series of operations to fill in a small test profile.
18 super(SmallProfileCreator, self).__init__()
19 typical_25 = os.path.join(util.GetBaseDir(), 'page_sets', 'typical_25.py')
20 self._page_set = page_set.PageSet.FromFile(typical_25)
22 # Open all links in the same tab save for the last _NUM_TABS links which
23 # are each opened in a new tab.
26 def TabForPage(self, page, browser):
27 idx = page.page_set.pages.index(page)
28 # The last _NUM_TABS pages open a new tab.
29 if idx <= (len(page.page_set.pages) - self._NUM_TABS):
30 return browser.tabs[0]
32 return browser.tabs.New()
34 def MeasurePage(self, _, tab, results):
35 # Can't use WaitForDocumentReadyStateToBeComplete() here due to
37 tab.WaitForDocumentReadyStateToBeInteractiveOrBetter()