tough_energy_cases.py revision 010d83a9304c5a91596085d917d248abff47903a
1a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch# Copyright 2014 The Chromium Authors. All rights reserved. 2a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch# Use of this source code is governed by a BSD-style license that can be 3a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch# found in the LICENSE file. 4a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch# pylint: disable=W0401,W0614 5a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochfrom telemetry.page.actions.all_page_actions import * 6a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochfrom telemetry.page import page as page_module 7a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochfrom telemetry.page import page_set as page_set_module 8a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 9a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 10010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)class ToughEnergyCasesPage(page_module.Page): 11a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 12a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch def __init__(self, url, page_set): 13a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch super(ToughEnergyCasesPage, self).__init__(url=url, page_set=page_set) 14a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.credentials_path = 'data/credentials.json' 15a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.archive_data_file = 'data/tough_energy_cases.json' 16a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 17a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 18a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochclass GmailPage(ToughEnergyCasesPage): 19a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 20a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch """ Why: productivity, top google properties """ 21a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 22a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch def __init__(self, page_set): 23a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch super(GmailPage, self).__init__( 24a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch url='https://mail.google.com/mail/', 25a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch page_set=page_set) 26a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 27a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.credentials = 'google' 28a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 29a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch def RunNavigateSteps(self, action_runner): 30a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch action_runner.RunAction(NavigateAction()) 31a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch action_runner.RunAction(WaitAction( 32a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch { 33a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 'javascript': ( 34a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 'window.gmonkey !== undefined &&' 35a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 'document.getElementById("gb") !== null') 36a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch })) 37a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 38a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 39a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochclass ToughEnergyCasesPageSet(page_set_module.PageSet): 40a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 41a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch """ Pages for measuring Chrome power draw. """ 42a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 43a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch def __init__(self): 44a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch super(ToughEnergyCasesPageSet, self).__init__( 45a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch credentials_path='data/credentials.json', 46a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch archive_data_file='data/tough_energy_cases.json') 47a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 48a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch # Why: Above the fold animated gif running in the background 49a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.AddPage(ToughEnergyCasesPage( 50a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 'file://tough_energy_cases/above-fold-animated-gif.html', 51a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self)) 52a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.AddPage(GmailPage(self)) 53a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch # Why: Below the fold animated gif 54a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.AddPage(ToughEnergyCasesPage( 55a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 'file://tough_energy_cases/below-fold-animated-gif.html', 56a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self)) 57a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch # Why: Below the fold flash animation 58a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self.AddPage(ToughEnergyCasesPage( 59a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 'file://tough_energy_cases/below-fold-flash.html', 60a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch self)) 61