| Index: tools/perf/profile_creators/small_profile_creator.py
|
| diff --git a/tools/perf/profile_creators/small_profile_creator.py b/tools/perf/profile_creators/small_profile_creator.py
|
| index 020f81f3fa466a6041db74c9759ed1be10e94cb3..970f6e774d6069a0e665371648060e1d047d5818 100644
|
| --- a/tools/perf/profile_creators/small_profile_creator.py
|
| +++ b/tools/perf/profile_creators/small_profile_creator.py
|
| @@ -4,20 +4,37 @@
|
|
|
| import os
|
|
|
| -from telemetry.core import profile_creator
|
| +from telemetry.core import util
|
| +from telemetry.page import page_runner
|
| from telemetry.page import page_set
|
| +from telemetry.page import profile_creator
|
|
|
| class SmallProfileCreator(profile_creator.ProfileCreator):
|
| """
|
| Runs a browser through a series of operations to fill in a small test profile.
|
| """
|
|
|
| - def CreateProfile(self):
|
| - top_25 = os.path.join(os.path.dirname(__file__),
|
| - '..', 'page_sets', 'top_25.json')
|
| - pages_to_load = page_set.PageSet.FromFile(top_25)
|
| - tab = self._browser.tabs[0]
|
| - for page in pages_to_load:
|
| - tab.Navigate(page.url)
|
| - tab.WaitForDocumentReadyStateToBeComplete()
|
| - tab.Disconnect()
|
| + def __init__(self):
|
| + super(SmallProfileCreator, self).__init__()
|
| + top_25 = os.path.join(util.GetBaseDir(), 'page_sets', 'top_25.json')
|
| + self._page_set = page_set.PageSet.FromFile(top_25)
|
| +
|
| + def CanRunForPage(self, page):
|
| + # Return true only for the first page, the other pages are opened in new
|
| + # tabs by DidNavigateToPage().
|
| + return not page.page_set.pages.index(page)
|
| +
|
| + def DidNavigateToPage(self, page, tab):
|
| + for i in xrange(1, len(page.page_set.pages)):
|
| + t = tab.browser.tabs.New()
|
| +
|
| + page_state = page_runner.PageState()
|
| + page_state.PreparePage(page.page_set.pages[i], t)
|
| + page_state.ImplicitPageNavigation(page.page_set.pages[i], t)
|
| +
|
| + t.WaitForDocumentReadyStateToBeComplete()
|
| + # Work around crbug.com/258113.
|
| + util.CloseConnections(t)
|
| +
|
| + def MeasurePage(self, _, tab, results):
|
| + pass
|
|
|