1# Copyright 2014 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.
4from telemetry.page import page as page_module
5from telemetry.page import page_set as page_set_module
6
7
8class StartedPage(page_module.Page):
9
10  def __init__(self, url, startup_url, page_set):
11    super(StartedPage, self).__init__(url=url, page_set=page_set)
12    self.archive_data_file = 'data/startup_pages.json'
13    self.startup_url = startup_url
14
15  def RunNavigateSteps(self, action_runner):
16    action_runner.Wait(10)
17
18class StartupPagesPageSet(page_set_module.PageSet):
19
20  """ Pages for testing starting Chrome with a URL.
21  Note that this file can't be used with record_wpr, since record_wpr requires
22  a true navigate step, which we do not want for startup testing. Instead use
23  record_wpr startup_pages_record to record data for this test.
24  """
25
26  def __init__(self):
27    super(StartupPagesPageSet, self).__init__(
28        archive_data_file='data/startup_pages.json',
29        bucket=page_set_module.PARTNER_BUCKET)
30
31    # Typical page.
32    self.AddPage(StartedPage('about:blank', 'about:blank', self))
33    # Typical page.
34    self.AddPage(StartedPage('http://bbc.co.uk', 'http://bbc.co.uk', self))
35    # Horribly complex page - stress test!
36    self.AddPage(StartedPage('http://kapook.com', 'http://kapook.com', self))
37