1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved.
2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# found in the LICENSE file.
4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)from telemetry.page import page
6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)from telemetry.page import page_set
7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)archive_data_file_path = 'data/service_worker.json'
10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class ServiceWorkerPage(page.Page):
13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  def RunNavigateSteps(self, action_runner):
14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch    action_runner.NavigateToPage()
15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)    action_runner.WaitForJavaScriptCondition('window.done')
16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class ServiceWorkerPageSet(page_set.PageSet):
19f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  """ServiceWorker performance tests"""
20f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  def __init__(self):
22cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    super(ServiceWorkerPageSet, self).__init__(
23cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        archive_data_file=archive_data_file_path,
24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)        make_javascript_deterministic=False,
25f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)        bucket=page_set.PUBLIC_BUCKET)
26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
27cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    self.AddPage(ServiceWorkerPage('http://localhost:8091/index.html', self))
28