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.json')
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()